[PATCH 0/4] ath11k: Enable low power mode when WLAN is not active

Limonciello, Mario mario.limonciello at amd.com
Sat Jul 23 05:09:11 PDT 2022


On 7/22/2022 17:00, Limonciello, Mario wrote:
> On 7/20/2022 08:49, Manikanta Pubbisetty wrote:
>> Currently, WLAN chip is powered once during driver probe and is kept
>> ON (powered) always even when WLAN is not active; keeping the chip
>> powered ON all the time will consume extra power which is not
>> desirable on a battery operated device. Same is the case with non-WoW
>> suspend, chip will not be put into low power mode when the system is
>> suspended resulting in higher battery drain.
>>
>> Send QMI MODE OFF command to firmware during WiFi OFF to put device
>> into low power mode.
>>
>> Tested-on: WCN6750 hw1.0 AHB WLAN.MSL.1.0.1-00887-QCAMSLSWPLZ-1
>>
>> Manikanta Pubbisetty (4):
>>    ath11k: Fix double free issue during SRNG deinit
>>    ath11k: Move hardware initialization logic to start()
>>    ath11k: Enable low power mode when WLAN is not active
>>    ath11k: Fix failed to parse regulatory event print
>>
>>   drivers/net/wireless/ath/ath11k/core.c | 237 ++++++++++++++++++-------
>>   drivers/net/wireless/ath/ath11k/core.h |   8 +-
>>   drivers/net/wireless/ath/ath11k/hal.c  |   1 +
>>   drivers/net/wireless/ath/ath11k/mac.c  |  33 ++--
>>   drivers/net/wireless/ath/ath11k/reg.c  |   2 +
>>   5 files changed, 189 insertions(+), 92 deletions(-)
>>
> 
> This series looked potentially promising to me for a problem that I'm 
> seeing on a notebook failing to sleep where WLAN_WAKE is asserted on the 
> WCN6855 on resume even though WoW wasn't set at all.  This is 
> problematic as it causes a spurious wake while SUT is reading from the 
> EC since two IRQs are now active and the kernel wakes from that.
> Removing the WCN6855 from the system it doesn't happen.
> 
> I figured I'd give it a spin to see if it improved things.
> I applied the series on top of 5.19-rc7 and it applied cleanly but I get 
> timeouts on wlan card init (and of course suspend fails now too).
> 
> Here's the mhi/ath11k_pci snippets:
> 
> [    2.864110] ath11k_pci 0000:01:00.0: BAR 0: assigned [mem 
> 0xb4000000-0xb41fffff 64bit]
> [    2.864901] ath11k_pci 0000:01:00.0: MSI vectors: 32
> [    2.864912] ath11k_pci 0000:01:00.0: wcn6855 hw2.1
> [    3.106892] mhi mhi0: Requested to power ON
> [    3.107054] mhi mhi0: Power on setup success
> [    3.198178] mhi mhi0: Wait for device to enter SBL or Mission mode
> [    3.971019] ath11k_pci 0000:01:00.0: chip_id 0x2 chip_family 0xb 
> board_id 0xff soc_id 0x400c0210
> [    3.971025] ath11k_pci 0000:01:00.0: fw_version 0x11080bbb 
> fw_build_timestamp 2021-12-16 03:42 fw_build_id 
> WLAN.HSP.1.1-03003-QCAHSPSWPL_V1_V2_SILICONZ_LITE-2
> [    4.290328] ath11k_pci 0000:01:00.0 wlp1s0: renamed from wlan0
> [    4.308760] ath11k_pci 0000:01:00.0: Failed to set the requested 
> Country regulatory setting
> [    4.309028] ath11k_pci 0000:01:00.0: Failed to set the requested 
> Country regulatory setting
> [   14.386201] ath11k_pci 0000:01:00.0: qmi failed wlan ini request, err 
> = -110
> [   14.386210] ath11k_pci 0000:01:00.0: qmi failed to send wlan fw ini:-110
> [   14.386214] ath11k_pci 0000:01:00.0: failed to send firmware start: -110
> [   14.386243] ath11k_pci 0000:01:00.0: failed to start firmware: -110
> [   14.386266] ath11k_pci 0000:01:00.0: failed to setup device: -110
> [   14.386300] ath11k_pci 0000:01:00.0: failed to start device : -110
> 
> And so - on.
> Is it functionally dependent on other patches in linux-next or another 
> tree I won't see in 5.19?

I had a try with linux-next and your series but I reproduce the same 
failure I described above.

ee3a066e4f4e (HEAD) ath11k: Fix failed to parse regulatory event print
4f850f1e26dc ath11k: Enable low power mode when WLAN is not active
e320c8ef9841 ath11k: Move hardware initialization logic to start()
dbc26036c1ef ath11k: Fix double free issue during SRNG deinit
18c107a1f120 (tag: next-20220722, linux-next/master) Add linux-next 
specific files for 20220722





More information about the ath11k mailing list