diff options
author | Pierre Ossman <drzeus@drzeus.cx> | 2006-06-30 05:22:23 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2006-07-02 11:02:01 -0400 |
commit | 146ad66eac836c0b976c98f428d73e1f6a75270d (patch) | |
tree | 7f1dd2b34a6225360fab04abffa4c9dd2e124cd2 /drivers/mmc/sdhci.h | |
parent | 51f82bc07a9673d790c2a17de8e3fa8046543f04 (diff) |
[MMC] sdhci: support for multiple voltages
The sdhci controllers can support up to three voltage levels. Detect which
and report back to the MMC layer.
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/mmc/sdhci.h')
-rw-r--r-- | drivers/mmc/sdhci.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/mmc/sdhci.h b/drivers/mmc/sdhci.h index 3b270ef486b4..aed4abd37bfd 100644 --- a/drivers/mmc/sdhci.h +++ b/drivers/mmc/sdhci.h | |||
@@ -67,6 +67,10 @@ | |||
67 | #define SDHCI_CTRL_4BITBUS 0x02 | 67 | #define SDHCI_CTRL_4BITBUS 0x02 |
68 | 68 | ||
69 | #define SDHCI_POWER_CONTROL 0x29 | 69 | #define SDHCI_POWER_CONTROL 0x29 |
70 | #define SDHCI_POWER_ON 0x01 | ||
71 | #define SDHCI_POWER_180 0x0A | ||
72 | #define SDHCI_POWER_300 0x0C | ||
73 | #define SDHCI_POWER_330 0x0E | ||
70 | 74 | ||
71 | #define SDHCI_BLOCK_GAP_CONTROL 0x2A | 75 | #define SDHCI_BLOCK_GAP_CONTROL 0x2A |
72 | 76 | ||
@@ -121,9 +125,12 @@ | |||
121 | /* 3E-3F reserved */ | 125 | /* 3E-3F reserved */ |
122 | 126 | ||
123 | #define SDHCI_CAPABILITIES 0x40 | 127 | #define SDHCI_CAPABILITIES 0x40 |
124 | #define SDHCI_CAN_DO_DMA 0x00400000 | ||
125 | #define SDHCI_CLOCK_BASE_MASK 0x00003F00 | 128 | #define SDHCI_CLOCK_BASE_MASK 0x00003F00 |
126 | #define SDHCI_CLOCK_BASE_SHIFT 8 | 129 | #define SDHCI_CLOCK_BASE_SHIFT 8 |
130 | #define SDHCI_CAN_DO_DMA 0x00400000 | ||
131 | #define SDHCI_CAN_VDD_330 0x01000000 | ||
132 | #define SDHCI_CAN_VDD_300 0x02000000 | ||
133 | #define SDHCI_CAN_VDD_180 0x04000000 | ||
127 | 134 | ||
128 | /* 44-47 reserved for more caps */ | 135 | /* 44-47 reserved for more caps */ |
129 | 136 | ||
@@ -151,6 +158,7 @@ struct sdhci_host { | |||
151 | unsigned int max_clk; /* Max possible freq (MHz) */ | 158 | unsigned int max_clk; /* Max possible freq (MHz) */ |
152 | 159 | ||
153 | unsigned int clock; /* Current clock (MHz) */ | 160 | unsigned int clock; /* Current clock (MHz) */ |
161 | unsigned short power; /* Current voltage */ | ||
154 | 162 | ||
155 | struct mmc_request *mrq; /* Current request */ | 163 | struct mmc_request *mrq; /* Current request */ |
156 | struct mmc_command *cmd; /* Current command */ | 164 | struct mmc_command *cmd; /* Current command */ |