aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@intel.com>2013-05-06 05:17:32 -0400
committerChris Ball <cjb@laptop.org>2013-05-26 14:23:23 -0400
commitf0710a557cb17746b09234f01073a2cdafe4f4a5 (patch)
treef56e5fdd5ba030c74e4a0a73959537cf8254c865 /include
parent113a87f868b2f2e086790a68e8b9e41d8f0c3295 (diff)
mmc: sdhci: add ability to stay runtime-resumed if the card is powered up
If card power is dependent on SD bus power then the host controller must not be runtime suspended while the card is powered up. Add the ability to stay runtime-resumed in that case and enable it with a new quirk SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mmc/sdhci.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/mmc/sdhci.h b/include/linux/mmc/sdhci.h
index b838ffc49e4a..ba35bdb87d99 100644
--- a/include/linux/mmc/sdhci.h
+++ b/include/linux/mmc/sdhci.h
@@ -95,6 +95,7 @@ struct sdhci_host {
95/* The system physically doesn't support 1.8v, even if the host does */ 95/* The system physically doesn't support 1.8v, even if the host does */
96#define SDHCI_QUIRK2_NO_1_8_V (1<<2) 96#define SDHCI_QUIRK2_NO_1_8_V (1<<2)
97#define SDHCI_QUIRK2_PRESET_VALUE_BROKEN (1<<3) 97#define SDHCI_QUIRK2_PRESET_VALUE_BROKEN (1<<3)
98#define SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON (1<<4)
98 99
99 int irq; /* Device IRQ */ 100 int irq; /* Device IRQ */
100 void __iomem *ioaddr; /* Mapped address */ 101 void __iomem *ioaddr; /* Mapped address */
@@ -139,6 +140,7 @@ struct sdhci_host {
139 u8 pwr; /* Current voltage */ 140 u8 pwr; /* Current voltage */
140 141
141 bool runtime_suspended; /* Host is runtime suspended */ 142 bool runtime_suspended; /* Host is runtime suspended */
143 bool bus_on; /* Bus power prevents runtime suspend */
142 144
143 struct mmc_request *mrq; /* Current request */ 145 struct mmc_request *mrq; /* Current request */
144 struct mmc_command *cmd; /* Current command */ 146 struct mmc_command *cmd; /* Current command */