aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/host/sdhci.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index ff59d2e0475b..17b4e391db35 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -26,12 +26,22 @@
26 26
27static unsigned int debug_quirks = 0; 27static unsigned int debug_quirks = 0;
28 28
29/*
30 * Different quirks to handle when the hardware deviates from a strict
31 * interpretation of the SDHCI specification.
32 */
33
34/* Controller doesn't honor resets unless we touch the clock register */
29#define SDHCI_QUIRK_CLOCK_BEFORE_RESET (1<<0) 35#define SDHCI_QUIRK_CLOCK_BEFORE_RESET (1<<0)
36/* Controller has bad caps bits, but really supports DMA */
30#define SDHCI_QUIRK_FORCE_DMA (1<<1) 37#define SDHCI_QUIRK_FORCE_DMA (1<<1)
31/* Controller doesn't like some resets when there is no card inserted. */ 38/* Controller doesn't like some resets when there is no card inserted. */
32#define SDHCI_QUIRK_NO_CARD_NO_RESET (1<<2) 39#define SDHCI_QUIRK_NO_CARD_NO_RESET (1<<2)
40/* Controller doesn't like clearing the power reg before a change */
33#define SDHCI_QUIRK_SINGLE_POWER_WRITE (1<<3) 41#define SDHCI_QUIRK_SINGLE_POWER_WRITE (1<<3)
42/* Controller has flaky internal state so reset it on each ios change */
34#define SDHCI_QUIRK_RESET_CMD_DATA_ON_IOS (1<<4) 43#define SDHCI_QUIRK_RESET_CMD_DATA_ON_IOS (1<<4)
44/* Controller has an unusable DMA engine */
35#define SDHCI_QUIRK_BROKEN_DMA (1<<5) 45#define SDHCI_QUIRK_BROKEN_DMA (1<<5)
36 46
37static const struct pci_device_id pci_ids[] __devinitdata = { 47static const struct pci_device_id pci_ids[] __devinitdata = {