RE: [PATCH] mmc/sdio: don't allow interface to runtime-suspend until probe is finished.

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

 



Hi Neil,

> In the other case where I do let it suspend early (And it never recovers
> without the reset line being toggled) I see:
> 
> [ 2170.100982] mmc_wait_for_cmd 52 -> -110
> [ 2170.105407] mmc_wait_for_cmd 52 -> -110
> [ 2170.110260] mmc_wait_for_cmd 0 -> 0
> [ 2170.115509] mmc_wait_for_cmd 8 -> -110
> [ 2170.119842] mmc_wait_for_cmd 5 -> 0
> [ 2170.123901] mmc_wait_for_cmd 5 -> 0
> [ 2170.127929] mmc_wait_for_cmd 3 -> 0
> [ 2170.131958] mmc_wait_for_cmd 7 -> 0

This works when reset line toggling was applied.

> [ 2170.135986] mmc_wait_for_cmd 52 -> 0
> [ 2170.140136] mmc_wait_for_cmd 52 -> 0
> [ 2170.144226] mmc_wait_for_cmd 52 -> 0
> [ 2170.148376] mmc_wait_for_cmd 52 -> 0
> [ 2170.152465] mmc_wait_for_cmd 52 -> 0
> 
> 
> which is much the same but then one second later:
> 
> [ 2171.166656] mmc_wait_for_cmd 52 -> 0
> [ 2171.170806] mmc_wait_for_cmd 52 -> 0
> [ 2171.175384] mmc_wait_for_cmd 0 -> 0
> [ 2171.180603] mmc_wait_for_cmd 8 -> -110
> [ 2171.185943] mmc_wait_for_cmd 5 -> -110

Here the CMD5 timeout is expected because SD8686 has already been initialized with CMD5,5,3,7.
If you are able to skip re-initialization at this point, like what "powered_resume" does, you will probably get SD8686 continue to run.

Regards,
Bing

> [ 2171.190093] libertas_sdio: probe of mmc1:0001:1 failed with error -16
> 
> 
> So this answers Bing Zhao's question - it was CMD5 that timed out and caused
> the failure.
> 
> If I just get mmc_wait_for_cmd to hide error -110 for cmd 5 it complains
> 
> [   26.420440] mmc1: host doesn't support card's voltages
> 
> so that isn't a simple solution :-)

��.n��������+%������w��{.n�����{��i��)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥



[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux