mirror of https://gitee.com/openkylin/linux.git
ftgmac100: Set netdev->hw_features
So features can be turned on/off via ethtool Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
6aff0bf641
commit
8c3ed1315e
|
@ -1474,14 +1474,15 @@ static int ftgmac100_probe(struct platform_device *pdev)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Base feature set */
|
/* Base feature set */
|
||||||
netdev->features = NETIF_F_RXCSUM | NETIF_F_HW_CSUM |
|
netdev->hw_features = NETIF_F_RXCSUM | NETIF_F_HW_CSUM |
|
||||||
NETIF_F_GRO | NETIF_F_SG;
|
NETIF_F_GRO | NETIF_F_SG;
|
||||||
|
|
||||||
/* AST2400 doesn't have working HW checksum generation */
|
/* AST2400 doesn't have working HW checksum generation */
|
||||||
if (np && (of_device_is_compatible(np, "aspeed,ast2400-mac")))
|
if (np && (of_device_is_compatible(np, "aspeed,ast2400-mac")))
|
||||||
netdev->features &= ~NETIF_F_HW_CSUM;
|
netdev->hw_features &= ~NETIF_F_HW_CSUM;
|
||||||
if (np && of_get_property(np, "no-hw-checksum", NULL))
|
if (np && of_get_property(np, "no-hw-checksum", NULL))
|
||||||
netdev->features &= ~(NETIF_F_HW_CSUM | NETIF_F_RXCSUM);
|
netdev->hw_features &= ~(NETIF_F_HW_CSUM | NETIF_F_RXCSUM);
|
||||||
|
netdev->features |= netdev->hw_features;
|
||||||
|
|
||||||
/* register network device */
|
/* register network device */
|
||||||
err = register_netdev(netdev);
|
err = register_netdev(netdev);
|
||||||
|
|
Loading…
Reference in New Issue