Messages in this thread | | | Date | Tue, 24 Oct 2006 13:14:58 +0300 | From | Timo Teras <> | Subject | Re: MMC: When rescanning cards check existing cards after mmc_setup() |
| |
On Sun, Oct 22, 2006 at 11:55:17AM +0200, Pierre Ossman wrote: > Timo Teras wrote: > > Some broken cards seem to process CMD1 even in stand-by state. The result is > > that the card replies with ILLEGAL_COMMAND error for the next command sent > > after rescanning. Currently the next command is select card, which would > > return the error. But the CMD7 does actually succeed and retries of the > > command will timeout. The solution is to poll card status after the CMD1 > > which clears the cached error. > > I take it these cards do not reply to CMD2?
No. It just caches the error and fails the next command sent.
> This change is ok right now, but might come back to bite us in the > future if we implement more intelligent voltage selection (right now new > cards will have to make due with what's already selected).
I see. The voltage selection is done in mmc_setup() based on what cards are present.
> If we check cards on both sides of mmc_setup(), then we should be covered.
Should I update my patch to do this already? Or is the code fine as is?
> Also, please add some comments about why we do this. Otherwise it will > run the risk of getting removed in the future.
Will do.
I'll send updated patch later on.
-- Timo
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |