aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/sdhci-pltfm.h
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2011-05-27 11:48:14 -0400
committerChris Ball <cjb@laptop.org>2011-07-20 17:20:47 -0400
commit38576af1f8cad48446df47dcf404b197c9206dba (patch)
tree2e35c4fe4588b95febfb4430bbf784b5634b216d /drivers/mmc/host/sdhci-pltfm.h
parente307148fd4f971cecfaebb516ee28e164948a24b (diff)
mmc: sdhci: make sdhci-of device drivers self registered
The patch turns the sdhci-of-core common stuff into helper functions added into sdhci-pltfm.c, and makes sdhci-of device drviers self registered using the same pair of .probe and .remove used by sdhci-pltfm device drivers. As a result, sdhci-of-core.c and sdhci-of.h can be eliminated with those common things merged into sdhci-pltfm.c and sdhci-pltfm.h respectively. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Anton Vorontsov <cbouatmailru@gmail.com> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/host/sdhci-pltfm.h')
-rw-r--r--drivers/mmc/host/sdhci-pltfm.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/mmc/host/sdhci-pltfm.h b/drivers/mmc/host/sdhci-pltfm.h
index 3cac4506f8f9..fe27b83f5bb1 100644
--- a/drivers/mmc/host/sdhci-pltfm.h
+++ b/drivers/mmc/host/sdhci-pltfm.h
@@ -15,6 +15,7 @@
15#include <linux/types.h> 15#include <linux/types.h>
16#include <linux/platform_device.h> 16#include <linux/platform_device.h>
17#include <linux/mmc/sdhci-pltfm.h> 17#include <linux/mmc/sdhci-pltfm.h>
18#include <linux/mmc/sdhci.h>
18 19
19struct sdhci_pltfm_host { 20struct sdhci_pltfm_host {
20 struct clk *clk; 21 struct clk *clk;
@@ -25,6 +26,17 @@ struct sdhci_pltfm_host {
25 u16 xfer_mode_shadow; 26 u16 xfer_mode_shadow;
26}; 27};
27 28
29#ifdef CONFIG_MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER
30extern u32 sdhci_be32bs_readl(struct sdhci_host *host, int reg);
31extern u16 sdhci_be32bs_readw(struct sdhci_host *host, int reg);
32extern u8 sdhci_be32bs_readb(struct sdhci_host *host, int reg);
33extern void sdhci_be32bs_writel(struct sdhci_host *host, u32 val, int reg);
34extern void sdhci_be32bs_writew(struct sdhci_host *host, u16 val, int reg);
35extern void sdhci_be32bs_writeb(struct sdhci_host *host, u8 val, int reg);
36#endif
37
38extern void sdhci_get_of_property(struct platform_device *pdev);
39
28extern struct sdhci_host *sdhci_pltfm_init(struct platform_device *pdev, 40extern struct sdhci_host *sdhci_pltfm_init(struct platform_device *pdev,
29 struct sdhci_pltfm_data *pdata); 41 struct sdhci_pltfm_data *pdata);
30extern void sdhci_pltfm_free(struct platform_device *pdev); 42extern void sdhci_pltfm_free(struct platform_device *pdev);