]> 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)
commitb378eb0c6f9f06d38eb397b1f1bfc7f9028a1a89
treee37c42aead323997bb588b735f0e01eef561c9b4
parent48891a53fb2b65bd347d87d0beeb7b7ae0bc4f52
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: 4fe738012c92 ("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