diff options
author | David Mosberger-Tang <davidm@egauge.net> | 2021-12-08 06:27:55 +0000 |
---|---|---|
committer | Kalle Valo <kvalo@kernel.org> | 2021-12-14 20:45:27 +0200 |
commit | 73bbef64bca781bbfa1abe07eb86b733c5b4f7da (patch) | |
tree | 63cf1e60a747fbf9e5be6a3cacf4767dc626fbf6 /drivers/net/wireless/microchip | |
parent | dde02213fa64ac7f99eb65cd51f9e04812d8bc40 (diff) | |
download | linux-73bbef64bca781bbfa1abe07eb86b733c5b4f7da.tar.bz2 |
wilc1000: Fix spurious "FW not responding" error
When deinitializing the driver, one or more "FW not responding" error
appears on the console. This appears to be due to wilc_wlan_stop()
disabling host/WILC1000 communication, but then right afterwards, it
tries to release the bus with chip-sleep enabled. The problem is
enabling the chip-sleep cannot success once host/WILC1000
communication is disabled. Fix by only releasing the bus.
Signed-off-by: David Mosberger-Tang <davidm@egauge.net>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20211208062747.3405221-1-davidm@egauge.net
Diffstat (limited to 'drivers/net/wireless/microchip')
-rw-r--r-- | drivers/net/wireless/microchip/wilc1000/wlan.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/microchip/wilc1000/wlan.c b/drivers/net/wireless/microchip/wilc1000/wlan.c index 82566544419a..1aa4236a2fe4 100644 --- a/drivers/net/wireless/microchip/wilc1000/wlan.c +++ b/drivers/net/wireless/microchip/wilc1000/wlan.c @@ -1224,7 +1224,8 @@ int wilc_wlan_stop(struct wilc *wilc, struct wilc_vif *vif) ret = 0; release: - release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP); + /* host comm is disabled - we can't issue sleep command anymore: */ + release_bus(wilc, WILC_BUS_RELEASE_ONLY); return ret; } |