diff options
author | Shawn Guo <shawn.guo@linaro.org> | 2011-05-27 19:48:14 +0400 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2011-07-21 01:20:47 +0400 |
commit | 38576af1f8cad48446df47dcf404b197c9206dba (patch) | |
tree | 2e35c4fe4588b95febfb4430bbf784b5634b216d /drivers/mmc/host/sdhci-pltfm.h | |
parent | e307148fd4f971cecfaebb516ee28e164948a24b (diff) | |
download | linux-38576af1f8cad48446df47dcf404b197c9206dba.tar.xz |
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.h | 12 |
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 @@ #include <linux/types.h> #include <linux/platform_device.h> #include <linux/mmc/sdhci-pltfm.h> +#include <linux/mmc/sdhci.h> struct sdhci_pltfm_host { struct clk *clk; @@ -25,6 +26,17 @@ struct sdhci_pltfm_host { u16 xfer_mode_shadow; }; +#ifdef CONFIG_MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER +extern u32 sdhci_be32bs_readl(struct sdhci_host *host, int reg); +extern u16 sdhci_be32bs_readw(struct sdhci_host *host, int reg); +extern u8 sdhci_be32bs_readb(struct sdhci_host *host, int reg); +extern void sdhci_be32bs_writel(struct sdhci_host *host, u32 val, int reg); +extern void sdhci_be32bs_writew(struct sdhci_host *host, u16 val, int reg); +extern void sdhci_be32bs_writeb(struct sdhci_host *host, u8 val, int reg); +#endif + +extern void sdhci_get_of_property(struct platform_device *pdev); + extern struct sdhci_host *sdhci_pltfm_init(struct platform_device *pdev, struct sdhci_pltfm_data *pdata); extern void sdhci_pltfm_free(struct platform_device *pdev); |