]> git.baikalelectronics.ru Git - kernel.git/commit
amd-xgbe: Reset running devices after resume from hibernate
authorJames Morse <james.morse@arm.com>
Fri, 26 Aug 2016 08:21:23 +0000 (09:21 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 29 Aug 2016 04:25:47 +0000 (00:25 -0400)
commita735081882b2f9e974419ebb95a15d13b3f68657
tree4e3ae5e29fb9aa58b0fc8785d8320da95dfcbc8e
parent9904ee5a0fdfe241c34113b8349cce81bdb016b2
amd-xgbe: Reset running devices after resume from hibernate

After resume from hibernate on arm64, any amd-xgbe devices that were
running when we hibernated are reported as down, even when it is not.

Re-plugging the cables does not cause the interface to come back, the
link must be marked as down then up via 'ip set link' using the serial
console.

This happens because the device has been power-cycled and possibly
re-initialised by firmware, whereas the driver's memory structures have
been restored from the hibernate image and the two do not agree.

Schedule a restart of the device after powerup in case the world changed
while we were asleep.

Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amd/xgbe/xgbe-main.c