Thread (2 messages) flat view 2 messages, 2 authors, 2021-06-14

Re: [PATCH] wlcore/wl12xx: Fix wl12xx get_mac error if device is in ELP

From: Kalle Valo <hidden>
Date: 2021-06-14 15:48:17
Also in: linux-omap

Tony Lindgren [off-list ref] wrote:
At least on wl12xx, reading the MAC after boot can fail with a warning
at drivers/net/wireless/ti/wlcore/sdio.c:78 wl12xx_sdio_raw_read.
The failed call comes from wl12xx_get_mac() that wlcore_nvs_cb() calls
after request_firmware_work_func().

After the error, no wireless interface is created. Reloading the wl12xx
module makes the interface work.

Turns out the wlan controller can be in a low-power ELP state after the
boot from the bootloader or kexec, and needs to be woken up first.

Let's wake the hardware and add a sleep after that similar to
wl12xx_pre_boot() is already doing.

Note that a similar issue could exist for wl18xx, but I have not seen it
so far. And a search for wl18xx_get_mac and wl12xx_sdio_raw_read did not
produce similar errors.

Cc: Carl Philipp Klemm <redacted>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Patch applied to wireless-drivers-next.git, thanks.

11ef6bc846dc wlcore/wl12xx: Fix wl12xx get_mac error if device is in ELP

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/20210603062814.19464-1-tony@atomide.com/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help