]> git.baikalelectronics.ru Git - kernel.git/commit
net: aquantia: fix wol configuration not applied sometimes
authorNikita Danilov <nikita.danilov@aquantia.com>
Tue, 4 Jun 2019 13:23:49 +0000 (13:23 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 6 Jun 2019 00:39:43 +0000 (17:39 -0700)
commitf53d654ae2c419927f416903da1b224c43ff5e4f
treee37c42aead323997bb588b735f0e01eef561c9b4
parent2a8945bb92bb383489571fe38eaf72886b0e4c46
net: aquantia: fix wol configuration not applied sometimes

WoL magic packet configuration sometimes does not work due to
couple of leakages found.

Mainly there was a regression introduced during readx_poll refactoring.

Next, fw request waiting time was too small. Sometimes that
caused sleep proxy config function to return with an error
and to skip WoL configuration.
At last, WoL data were passed to FW from not clean buffer.
That could cause FW to accept garbage as a random configuration data.

Fixes: bfaf0421130f ("net: aquantia: replace AQ_HW_WAIT_FOR with readx_poll_timeout_atomic")
Signed-off-by: Nikita Danilov <nikita.danilov@aquantia.com>
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils.c
drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils_fw2x.c