aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/tmio_mmc.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-01-26 14:00:41 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-26 14:00:41 -0500
commitccc039d65f24172eebab5e0160462d3417799af5 (patch)
treec02513223bebadd57da5b6648a497f99684111e2 /drivers/mmc/host/tmio_mmc.h
parent1c2948380b699dfdbb25a7de740392dd9e6f0613 (diff)
parent945be38caa287b177b8c17ffaae7754cab6a658f (diff)
Merge tag 'mmc-updates-for-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc
Pull MMC updates from Chris Ball: "MMC highlights for 3.14: Core: - Avoid get_cd() on cards marked nonremovable Drivers: - arasan: New driver for controllers found in e.g. Xilinx Zynq SoC - dwmmc: Support Hisilicon K3 SoC controllers - esdhc-imx: Support for HS200 mode, DDR modes on MX6, runtime PM - sdhci-pci: Support O2Micro/BayHubTech controllers used in laptops like Lenovo ThinkPad W540, Dell Latitude E5440, Dell Latitude E6540 - tegra: Support Tegra124 SoCs" * tag 'mmc-updates-for-3.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (55 commits) mmc: sdhci-pci: Fix possibility of chip->fixes being null mmc: sdhci-pci: Fix BYT sd card getting stuck in runtime suspend mmc: sdhci: Allow for long command timeouts mmc: sdio: add a quirk for broken SDIO_CCCR_INTx polling mmc: sdhci: fix lockdep error in tuning routine mmc: dw_mmc: k3: remove clk_table mmc: dw_mmc: fix dw_mci_get_cd mmc: dw_mmc: fix sparse non static symbol warning mmc: sdhci-esdhc-imx: fix warning during module remove function mmc: sdhci-esdhc-imx: fix access hardirq-unsafe lock in atomic context mmc: core: sd: implement proper support for sd3.0 au sizes mmc: atmel-mci: add vmmc-supply support mmc: sdhci-pci: add broken HS200 quirk for Intel Merrifield mmc: sdhci: add quirk for broken HS200 support mmc: arasan: Add driver for Arasan SDHCI mmc: dw_mmc: add dw_mmc-k3 for k3 platform mmc: dw_mmc: use slot-gpio to handle cd pin mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts mmc: sdhci-pci: break out definitions to header file mmc: tmio: fixup compile error ... Conflicts: MAINTAINERS
Diffstat (limited to 'drivers/mmc/host/tmio_mmc.h')
-rw-r--r--drivers/mmc/host/tmio_mmc.h17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/mmc/host/tmio_mmc.h b/drivers/mmc/host/tmio_mmc.h
index 86fd21e00099..aaa9c7e9e730 100644
--- a/drivers/mmc/host/tmio_mmc.h
+++ b/drivers/mmc/host/tmio_mmc.h
@@ -58,7 +58,6 @@ enum tmio_mmc_power {
58 58
59struct tmio_mmc_host { 59struct tmio_mmc_host {
60 void __iomem *ctl; 60 void __iomem *ctl;
61 unsigned long bus_shift;
62 struct mmc_command *cmd; 61 struct mmc_command *cmd;
63 struct mmc_request *mrq; 62 struct mmc_request *mrq;
64 struct mmc_data *data; 63 struct mmc_data *data;
@@ -176,19 +175,19 @@ int tmio_mmc_host_runtime_resume(struct device *dev);
176 175
177static inline u16 sd_ctrl_read16(struct tmio_mmc_host *host, int addr) 176static inline u16 sd_ctrl_read16(struct tmio_mmc_host *host, int addr)
178{ 177{
179 return readw(host->ctl + (addr << host->bus_shift)); 178 return readw(host->ctl + (addr << host->pdata->bus_shift));
180} 179}
181 180
182static inline void sd_ctrl_read16_rep(struct tmio_mmc_host *host, int addr, 181static inline void sd_ctrl_read16_rep(struct tmio_mmc_host *host, int addr,
183 u16 *buf, int count) 182 u16 *buf, int count)
184{ 183{
185 readsw(host->ctl + (addr << host->bus_shift), buf, count); 184 readsw(host->ctl + (addr << host->pdata->bus_shift), buf, count);
186} 185}
187 186
188static inline u32 sd_ctrl_read32(struct tmio_mmc_host *host, int addr) 187static inline u32 sd_ctrl_read32(struct tmio_mmc_host *host, int addr)
189{ 188{
190 return readw(host->ctl + (addr << host->bus_shift)) | 189 return readw(host->ctl + (addr << host->pdata->bus_shift)) |
191 readw(host->ctl + ((addr + 2) << host->bus_shift)) << 16; 190 readw(host->ctl + ((addr + 2) << host->pdata->bus_shift)) << 16;
192} 191}
193 192
194static inline void sd_ctrl_write16(struct tmio_mmc_host *host, int addr, u16 val) 193static inline void sd_ctrl_write16(struct tmio_mmc_host *host, int addr, u16 val)
@@ -198,19 +197,19 @@ static inline void sd_ctrl_write16(struct tmio_mmc_host *host, int addr, u16 val
198 */ 197 */
199 if (host->pdata->write16_hook && host->pdata->write16_hook(host, addr)) 198 if (host->pdata->write16_hook && host->pdata->write16_hook(host, addr))
200 return; 199 return;
201 writew(val, host->ctl + (addr << host->bus_shift)); 200 writew(val, host->ctl + (addr << host->pdata->bus_shift));
202} 201}
203 202
204static inline void sd_ctrl_write16_rep(struct tmio_mmc_host *host, int addr, 203static inline void sd_ctrl_write16_rep(struct tmio_mmc_host *host, int addr,
205 u16 *buf, int count) 204 u16 *buf, int count)
206{ 205{
207 writesw(host->ctl + (addr << host->bus_shift), buf, count); 206 writesw(host->ctl + (addr << host->pdata->bus_shift), buf, count);
208} 207}
209 208
210static inline void sd_ctrl_write32(struct tmio_mmc_host *host, int addr, u32 val) 209static inline void sd_ctrl_write32(struct tmio_mmc_host *host, int addr, u32 val)
211{ 210{
212 writew(val, host->ctl + (addr << host->bus_shift)); 211 writew(val, host->ctl + (addr << host->pdata->bus_shift));
213 writew(val >> 16, host->ctl + ((addr + 2) << host->bus_shift)); 212 writew(val >> 16, host->ctl + ((addr + 2) << host->pdata->bus_shift));
214} 213}
215 214
216 215