aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/myri10ge/myri10ge.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/myri10ge/myri10ge.c')
-rw-r--r--drivers/net/myri10ge/myri10ge.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c
index e0b47cc8a86e..d771d1650d60 100644
--- a/drivers/net/myri10ge/myri10ge.c
+++ b/drivers/net/myri10ge/myri10ge.c
@@ -1730,8 +1730,7 @@ static int myri10ge_set_rx_csum(struct net_device *netdev, u32 csum_enabled)
1730 if (csum_enabled) 1730 if (csum_enabled)
1731 mgp->csum_flag = MXGEFW_FLAGS_CKSUM; 1731 mgp->csum_flag = MXGEFW_FLAGS_CKSUM;
1732 else { 1732 else {
1733 u32 flags = ethtool_op_get_flags(netdev); 1733 netdev->features &= ~NETIF_F_LRO;
1734 err = ethtool_op_set_flags(netdev, (flags & ~ETH_FLAG_LRO));
1735 mgp->csum_flag = 0; 1734 mgp->csum_flag = 0;
1736 1735
1737 } 1736 }
@@ -1900,6 +1899,11 @@ static u32 myri10ge_get_msglevel(struct net_device *netdev)
1900 return mgp->msg_enable; 1899 return mgp->msg_enable;
1901} 1900}
1902 1901
1902static int myri10ge_set_flags(struct net_device *netdev, u32 value)
1903{
1904 return ethtool_op_set_flags(netdev, value, ETH_FLAG_LRO);
1905}
1906
1903static const struct ethtool_ops myri10ge_ethtool_ops = { 1907static const struct ethtool_ops myri10ge_ethtool_ops = {
1904 .get_settings = myri10ge_get_settings, 1908 .get_settings = myri10ge_get_settings,
1905 .get_drvinfo = myri10ge_get_drvinfo, 1909 .get_drvinfo = myri10ge_get_drvinfo,
@@ -1920,7 +1924,7 @@ static const struct ethtool_ops myri10ge_ethtool_ops = {
1920 .set_msglevel = myri10ge_set_msglevel, 1924 .set_msglevel = myri10ge_set_msglevel,
1921 .get_msglevel = myri10ge_get_msglevel, 1925 .get_msglevel = myri10ge_get_msglevel,
1922 .get_flags = ethtool_op_get_flags, 1926 .get_flags = ethtool_op_get_flags,
1923 .set_flags = ethtool_op_set_flags 1927 .set_flags = myri10ge_set_flags
1924}; 1928};
1925 1929
1926static int myri10ge_allocate_rings(struct myri10ge_slice_state *ss) 1930static int myri10ge_allocate_rings(struct myri10ge_slice_state *ss)