summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/marvell/mvneta.c
diff options
context:
space:
mode:
authorJisheng Zhang <jszhang@marvell.com>2017-03-29 16:47:19 +0800
committerDavid S. Miller <davem@davemloft.net>2017-03-29 14:08:57 -0700
commitd6956ac87b5ff6841b09c273a70de86200d82019 (patch)
tree745a68050e585bb982f7c4d363d5bc80600a11c8 /drivers/net/ethernet/marvell/mvneta.c
parenta38d20d791fdcd79ebccda15a8308a6d8ada6e1c (diff)
downloadop-kernel-dev-d6956ac87b5ff6841b09c273a70de86200d82019.zip
op-kernel-dev-d6956ac87b5ff6841b09c273a70de86200d82019.tar.gz
net: mvneta: set rx mode during resume if interface is running
I found a bug by: 0. boot and start dhcp client 1. echo mem > /sys/power/state 2. resume back immediately 3. don't touch dhcp client to renew the lease 4. ping the gateway. No acks Usually, after step2, the DHCP lease isn't expired, so in theory we should resume all back. But in fact, it doesn't. It turns out the rx mode isn't resumed correctly. This patch fixes it by adding mvneta_set_rx_mode(dev) in the resume hook if interface is running. Signed-off-by: Jisheng Zhang <jszhang@marvell.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/marvell/mvneta.c')
-rw-r--r--drivers/net/ethernet/marvell/mvneta.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/ethernet/marvell/mvneta.c b/drivers/net/ethernet/marvell/mvneta.c
index 7a6c65b..34a3686 100644
--- a/drivers/net/ethernet/marvell/mvneta.c
+++ b/drivers/net/ethernet/marvell/mvneta.c
@@ -4451,8 +4451,11 @@ static int mvneta_resume(struct device *device)
mvneta_fixed_link_update(pp, dev->phydev);
netif_device_attach(dev);
- if (netif_running(dev))
+ if (netif_running(dev)) {
mvneta_open(dev);
+ mvneta_set_rx_mode(dev);
+ }
+
return 0;
}
#endif
OpenPOWER on IntegriCloud