Re: [Sdhci-devel] SDHCI driver runnining in aspire one, allows towrite to R/O SD cards

From: Garrett D'Amore
Date: Mon Apr 27 2009 - 18:20:00 EST


Maxim Levitsky wrote:
On Mon, 2009-04-27 at 11:12 -0700, Garrett D'Amore wrote:
As an extra data point, my sdhost driver in OpenSolaris works fine on the AA1.. it does see that the cards are locked, and refuses to allow them to be mounted read/write.

This leads me to believe that the original linux problem is one of two things:

* either a bug in the linux code, or
* busted circuit/hardware on a specific unit (i.e. a damaged unit)

I believe that if the Linux code was buggy here, the problem would be reproducible on all platforms, not just the AA1. So my inclination, barring independent confirmation, is that most likely there are one ore more defective units out there.

Note that the AA1 also has buggy BIOS -- OpenSolaris can't "see" the cards (registers aren't properly initialized) unless they are present when the unit first powers up.

But, why it works in windows?

The Microsoft PCI code base probably is more willing to "work around" BIOSes that don't properly configure PCI configuration registers... this is an outstanding RFE for Solaris.

The Windows code base also has some other unrelated quirks in it -- it uses DAT3 for card presence detection instead of the card detect bit in the sdhci controller, for example. (It also doesn't support MMC, which is to blame for some of the bastardized controller hacks that mfgrs like Ricoh have done to separate their MMC and SDcard handling into separate PCI functions. Yes, that's a hardware workaround for a software bug! Go figure -- its what happens when one software company has a virtual monopoly...)

-- Garrett
Regards,
Maxim Levitsky


--
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/