Re: SDHCI: Ricoh [1180:e823] unable to mount MMC cards.

From: Philip Langdale
Date: Thu Mar 31 2011 - 15:15:16 EST


On Thu, 31 Mar 2011 14:33:19 -0400, Chris Ball <cjb@xxxxxxxxxx> wrote:
Hi Manoj,

On Thu, Mar 31 2011, Manoj wrote:
Card did not mount. New dmesg is attached.

Okay. There's nothing in the log about Ricoh, which probably means that
it bailed out early in the function. You could add a printk to the top
of ricoh_mmc_fixup_rl5c476() if you want to be really sure that the code
there is getting a chance to run.

I think the likely conclusion is that:

(a) The Ricoh controller has a proprietary MMC function that is stealing
MMC cards away from the SDHCI controller even though the SDHCI could
read them if it had a chance to.

(b) We don't know how to turn the MMC controller off, because our old
method for doing so isn't working on this new 0xe823 model.

I'm adding a few people who've touched this code to CC: in case they
have any ideas on working out how to disable the MMC function. If you
have contact with Ricoh directly or through a vendor, please ask them
for the PCI configuration writes needed to disable the MMC function on
this model so that you can read MMC cards with the SD interface instead.

For what it's worth, I previously investigated a Dell e6400 with an 0x822
and an 0x823 and even without the MMC function disabled, the SD function
would get the SD card. The machine I currently have access to just has
the 0x822 function so I doubt it can be used to prove anything.

I was under the impression they'd changed the priority of the controllers
(and probably requiring the MMC driver to set a flag to make it steal
cards)

--phil
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/