On Mon, 11 Nov 2019 at 23:08, Tony Lindgren <tony@xxxxxxxxxxx> wrote: > > Hi, > > * Ulf Hansson <ulf.hansson@xxxxxxxxxx> [191109 10:31]: > > Changes in v2: > > - Add adaptations to the mwifiex driver. > > - Keep existing syncronous reset behaviour if the SDIO card has a single > > func driver. > > > > It has turned out that it's not a good idea to try to power cycle and to > > re-initialize the SDIO card, as currently done through mmc_hw_reset(). This > > because there may be multiple SDIO funcs attached to the same SDIO card and > > some of the others that didn't execute the call to mmc_hw_reset(), may then > > simply experience an undefined behaviour. > > > > The following patches in this series attempts to address this problem, by > > reworking the mmc_hw_reset() behaviour for SDIO and by adopting the Marvel > > mwifiex driver to these changes. > > > > Note that, I don't have the HW at hand so the the code has only compile tested. > > Test on HW is greatly appreciated! > > Looks good to me. I tried testing this, but looks like at least on duovero > mwifiex_sdio is broken in v5.4-rc7: > > # dmesg | grep mwifi > mwifiex_sdio mmc1:0001:1: poll card status failed, tries = 100 > mwifiex_sdio mmc1:0001:1: FW download with helper: poll status timeout @ 0 > mwifiex_sdio mmc1:0001:1: prog_fw failed ret=0xffffffff > mwifiex_sdio mmc1:0001:1: info: _mwifiex_fw_dpc: unregister device > > No idea when it broke and what might be the issue this time around. > Any ideas? Sorry, no good idea. Perhaps something on the mmc host level that has changed? Kind regards Uffe