aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc
diff options
context:
space:
mode:
authorPierre Ossman <drzeus@drzeus.cx>2008-07-04 06:51:20 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-04 13:44:49 -0400
commitbf5b1935d8e42b36a34645788eb261461fe07f2e (patch)
treebef08cc990a9dd83a515befc4939165acfb3d54a /drivers/mmc
parent46b6d94eb04a718730c73b83db889341aad0515e (diff)
mmc: don't use DMA on newer ENE controllers
Even the newer ENE controllers have bugs in their DMA engine that make it too dangerous to use. Disable it until someone has figured out under which conditions it corrupts data. This has caused problems at least once, and can be found as bug report 10925 in the kernel bugzilla. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/host/sdhci.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 2b3f06a024f..b413aa6c246 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -119,7 +119,8 @@ static const struct pci_device_id pci_ids[] __devinitdata = {
119 .subvendor = PCI_ANY_ID, 119 .subvendor = PCI_ANY_ID,
120 .subdevice = PCI_ANY_ID, 120 .subdevice = PCI_ANY_ID,
121 .driver_data = SDHCI_QUIRK_SINGLE_POWER_WRITE | 121 .driver_data = SDHCI_QUIRK_SINGLE_POWER_WRITE |
122 SDHCI_QUIRK_RESET_CMD_DATA_ON_IOS, 122 SDHCI_QUIRK_RESET_CMD_DATA_ON_IOS |
123 SDHCI_QUIRK_BROKEN_DMA,
123 }, 124 },
124 125
125 { 126 {
@@ -128,7 +129,8 @@ static const struct pci_device_id pci_ids[] __devinitdata = {
128 .subvendor = PCI_ANY_ID, 129 .subvendor = PCI_ANY_ID,
129 .subdevice = PCI_ANY_ID, 130 .subdevice = PCI_ANY_ID,
130 .driver_data = SDHCI_QUIRK_SINGLE_POWER_WRITE | 131 .driver_data = SDHCI_QUIRK_SINGLE_POWER_WRITE |
131 SDHCI_QUIRK_RESET_CMD_DATA_ON_IOS, 132 SDHCI_QUIRK_RESET_CMD_DATA_ON_IOS |
133 SDHCI_QUIRK_BROKEN_DMA,
132 }, 134 },
133 135
134 { 136 {