* [PATCH 0/1] MMC: SDIO card reset support for Intel Moorestown platform
@ 2009-06-16 11:18 Li, Jiebing
2009-06-22 15:03 ` Pierre Tardy
0 siblings, 1 reply; 2+ messages in thread
From: Li, Jiebing @ 2009-06-16 11:18 UTC (permalink / raw)
To: Pierre Ossman; +Cc: linux-kernel, Johnson, Charles F, Zhu, Daniel, Yuan, Hang
Hi Pierre and all,
Here's a SDIO driver code patch which implements SDIO card reset support for device driver to recover the card to the normal status in case that error occurs.
Thanks for your review!
Regards,
Jiebing Li
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH 0/1] MMC: SDIO card reset support for Intel Moorestown platform
2009-06-16 11:18 [PATCH 0/1] MMC: SDIO card reset support for Intel Moorestown platform Li, Jiebing
@ 2009-06-22 15:03 ` Pierre Tardy
0 siblings, 0 replies; 2+ messages in thread
From: Pierre Tardy @ 2009-06-22 15:03 UTC (permalink / raw)
To: linux-kernel
Li, Jiebing <jiebing.li <at> intel.com> writes:
>
> Hi Pierre and all,
>
> Here's a SDIO driver code patch which implements SDIO card reset support for
device driver to recover the
> card to the normal status in case that error occurs.
Another case that may need to be addressed is sdio reset in the scan sequence.
On some HC board, the sdio power survives upon board reset. A previously
initialised SD card will stay in IORDY mode, and wont answer to CMD5.
Though, a reset cmd52 should be sent before or after cmd0 in case of a io card
is still initialised from a previous boot.
One problem here is that mmc_io_rw_direct needs a struct mmc_card *, which is
not yet available in mmc_rescan().
I have a Q&D mmc_io_reset implementation, which works, but rely on
mmc_io_rw_direct implementation only to use card->host.
int mmc_io_reset(struct mmc_host *host)
{
struct mmc_card card;
u8 reg;
int ret;
card.host = host;
// not sure if we really need to read and modify.
// Reset wont reset the other bits anyway?
ret = mmc_io_rw_direct(&card, 0, 0, SDIO_CCCR_ABORT, 0, ®);
if (ret)
reg = 0x08;
else
reg |= 0x08;
return mmc_io_rw_direct(&card, 1, 0, SDIO_CCCR_ABORT, reg, NULL);
}
Any idea on how to deal with this situation correctly?
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-06-22 15:03 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-16 11:18 [PATCH 0/1] MMC: SDIO card reset support for Intel Moorestown platform Li, Jiebing
2009-06-22 15:03 ` Pierre Tardy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®