Search Linux Wireless

Re: [PATCH v2] wifi: wilc1000: Keep slot powered on during suspend/resume

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/26/24 21:50, Marek Vasut wrote:
> The WILC3000 can suspend and enter low power state. According to local
> measurements, the WILC3000 consumes the same amount of power if the slot
> is powered up and WILC3000 is suspended, and if the WILC3000 is powered
> off. Use the former option, keep the WILC3000 powered up as that allows
> for things like WoWlan to work.
> 
> Note that this is tested on WILC3000 only, not on WILC1000 .

So I have tested this change on wilc1000 over sdio (after enabling
MMC_PM_KEEP_POWER capability on my sdmmc controller), and LGTM, system properly
enters and leave suspend, and on resume module is working (ie in sta mode, chip
properly reconnects to configured AP).

The only concern I still have is about existing user who currently do not
declare MMC_PM_KEEP_POWER cap correctly on their platform (as it was the case
for me, and as Ajay eventually raised in the first revision):
- they can currently enter system suspend (and yes, for at least some Atmel
platforms, wilc chip still works on resume because it is "accidentally" kept
powered on)
- after this change, they will fail to do so (because of the failing call to
sdio_set_host_pm_flags, which makes the whole suspend method fail)

But I guess the issue is rather on the sdio host controller description on those
platforms, which should always have the MMC_PM_KEEP_POWER cap set ? If so:

Tested-by: Alexis Lothoré <alexis.lothore@xxxxxxxxxxx>
Tested-on: WILC1000SD 07 SDIO WILC_WIFI_FW_REL_16_1_2

-- 
Alexis Lothoré, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux