[PATCH 2.6.20-rc2] Add a quirk to allow at least some ENE PCI SD card readers to work again
- From: Darren Salt <linux@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Sun, 31 Dec 2006 03:10:50 +0000
Add a quirk to allow at least some ENE PCI SD card readers to work again
Support for these devices was broken for 2.6.18-rc1 and later by commit
146ad66eac836c0b976c98f428d73e1f6a75270d, which added voltage level support.
This restores the previous behaviour for these devices (PCI ID 1524:0550).
Signed-off-by: Darren Salt <linux@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
diff -ur linux-2.6.20-rc.orig/drivers/mmc/sdhci.c linux-2.6.20-rc/drivers/mmc/sdhci.c
--- linux-2.6.20-rc.orig/drivers/mmc/sdhci.c 2006-12-30 15:34:11.000000000 +0000
+++ linux-2.6.20-rc/drivers/mmc/sdhci.c 2006-12-31 02:46:48.000000000 +0000
@@ -37,6 +37,7 @@
#define SDHCI_QUIRK_FORCE_DMA (1<<1)
/* Controller doesn't like some resets when there is no card inserted. */
#define SDHCI_QUIRK_NO_CARD_NO_RESET (1<<2)
+#define SDHCI_QUIRK_FORCE_POWER (1<<3)
static const struct pci_device_id pci_ids[] __devinitdata = {
{
@@ -65,6 +66,14 @@
.driver_data = SDHCI_QUIRK_FORCE_DMA,
},
+ {
+ .vendor = PCI_VENDOR_ID_ENE,
+ .device = PCI_DEVICE_ID_ENE_CB712_SD,
+ .subvendor = PCI_ANY_ID,
+ .subdevice = PCI_ANY_ID,
+ .driver_data = SDHCI_QUIRK_FORCE_POWER,
+ },
+
{ /* Generic SD host controller */
PCI_DEVICE_CLASS((PCI_CLASS_SYSTEM_SDHCI << 8), 0xFFFF00)
},
@@ -671,6 +680,12 @@
{
u8 pwr;
+ if (host->chip->quirks & SDHCI_QUIRK_FORCE_POWER) {
+ writeb((power != (unsigned short) -1) ? 0xFF : 0,
+ host->ioaddr + SDHCI_POWER_CONTROL);
+ goto out;
+ }
+
if (host->power == power)
return;
diff -ur linux-2.6.20-rc.orig/include/linux/pci_ids.h linux-2.6.20-rc/include/linux/pci_ids.h
--- linux-2.6.20-rc.orig/include/linux/pci_ids.h 2006-12-30 15:34:21.000000000 +0000
+++ linux-2.6.20-rc/include/linux/pci_ids.h 2006-12-31 02:46:48.000000000 +0000
@@ -1968,6 +1968,7 @@
#define PCI_DEVICE_ID_TOPIC_TP560 0x0000
#define PCI_VENDOR_ID_ENE 0x1524
+#define PCI_DEVICE_ID_ENE_CB712_SD 0x0550
#define PCI_DEVICE_ID_ENE_1211 0x1211
#define PCI_DEVICE_ID_ENE_1225 0x1225
#define PCI_DEVICE_ID_ENE_1410 0x1410
--
| Darren Salt | linux or ds at | nr. Ashington, | Toon
| RISC OS, Linux | youmustbejoking,demon,co,uk | Northumberland | Army
| + Buy local produce. Try to walk or cycle. TRANSPORT CAUSES GLOBAL WARMING.
I think therefore I create bugs.
-
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/
- Follow-Ups:
- Prev by Date: Re: [OOPS] bcm43xx oops on 2.6.20-rc1 on x86_64
- Next by Date: Re: [Alsa-devel] Regression in 2.6.19 and 2.6.20 for snd_hda_intel
- Previous by thread: 2.6.19 bluetooth PPP (rfcomm) regression
- Next by thread: Re: [PATCH 2.6.20-rc2] Add a quirk to allow at least some ENE PCI SD card readers to work again
- Index(es):
Relevant Pages
- Re: Barclays online banking
... support and guarantee to work with only certain browsers and operating ... sending
"card readers to scramble your pin" to make online banking ... Basically, when you go to
log on online, you put your card in the reader, enter your PIN, then after you enter your card details
the website gives you an 8-digit code that you enter into the reader which then returns a 6-digit
code to enter into the website. ... If you want to see a PDF user guide ABN AMRO have an
English guide here ... (uk.comp.os.linux) - Re: HEADSUP: USB da(4) quirks disabled for 4.9 and 5.2
... Now that no USB devices should ... The UFI USB transports does not support
... You should be able to pass that quirk back up to da ... (freebsd-current) - Re: HEADSUP: USB da(4) quirks disabled for 4.9 and 5.2
... Now that no USB devices should ... The UFI USB transports does not support
... You should be able to pass that quirk back up to da ... (freebsd-stable) - USB flash card reader for 2.2 kernels?
... I've got a RedHat 6.2 system updated to kernel 2.2.24. ... module doesn't support
most modern USB card readers, ... PQI Travel Flash card reader, and although the
Travel Flash is recognized, ... (comp.os.linux.hardware) - Re: reading a cell phone "sim card" from linux?
... > However, I've looked at a few card readers, even the ones that support ...
I saw some SIM card readers at www.ebuyer.com ... (comp.os.linux.hardware)