aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-s3c/include
diff options
context:
space:
mode:
authorBen Dooks <ben-linux@fluff.org>2008-10-31 12:14:39 -0400
committerBen Dooks <ben-linux@fluff.org>2008-12-15 18:40:07 -0500
commita2205cd2cbfb8fb217e6036f08773a09d1b6d75e (patch)
tree43d4157a5ab1c979fa40e131510aff0c4c86cbb8 /arch/arm/plat-s3c/include
parent5cc7fd88fc96072c333184ff359c818665ce2506 (diff)
[ARM] S3C: Add SDHCI (HSMMC) channel 1 device definition
Add device definition and support code for the Samsung HSMMC channel 1 device. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'arch/arm/plat-s3c/include')
-rw-r--r--arch/arm/plat-s3c/include/plat/sdhci.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/arch/arm/plat-s3c/include/plat/sdhci.h b/arch/arm/plat-s3c/include/plat/sdhci.h
index c9999121b4bb..5aeebeb70dc2 100644
--- a/arch/arm/plat-s3c/include/plat/sdhci.h
+++ b/arch/arm/plat-s3c/include/plat/sdhci.h
@@ -56,12 +56,14 @@ struct s3c_sdhci_platdata {
56 * make the structure itself __initdata. 56 * make the structure itself __initdata.
57 */ 57 */
58extern void s3c_sdhci0_set_platdata(struct s3c_sdhci_platdata *pd); 58extern void s3c_sdhci0_set_platdata(struct s3c_sdhci_platdata *pd);
59extern void s3c_sdhci1_set_platdata(struct s3c_sdhci_platdata *pd);
59 60
60/* Default platform data, exported so that per-cpu initialisation can 61/* Default platform data, exported so that per-cpu initialisation can
61 * set the correct one when there are more than one cpu type selected. 62 * set the correct one when there are more than one cpu type selected.
62*/ 63*/
63 64
64extern struct s3c_sdhci_platdata s3c_hsmmc0_def_platata; 65extern struct s3c_sdhci_platdata s3c_hsmmc0_def_platdata;
66extern struct s3c_sdhci_platdata s3c_hsmmc1_def_platdata;
65 67
66/* Helper function availablity */ 68/* Helper function availablity */
67 69
@@ -69,6 +71,8 @@ extern struct s3c_sdhci_platdata s3c_hsmmc0_def_platata;
69extern char *s3c6410_hsmmc_clksrcs[4]; 71extern char *s3c6410_hsmmc_clksrcs[4];
70 72
71extern void s3c6410_setup_sdhci0_cfg_gpio(struct platform_device *, int w); 73extern void s3c6410_setup_sdhci0_cfg_gpio(struct platform_device *, int w);
74extern void s3c6410_setup_sdhci1_cfg_gpio(struct platform_device *, int w);
75
72extern void s3c6410_setup_sdhci0_cfg_card(struct platform_device *dev, 76extern void s3c6410_setup_sdhci0_cfg_card(struct platform_device *dev,
73 void __iomem *r, 77 void __iomem *r,
74 struct mmc_ios *ios, 78 struct mmc_ios *ios,
@@ -80,8 +84,16 @@ static inline void s3c6410_default_sdhci0(void)
80 s3c_hsmmc0_def_platdata.cfg_gpio = s3c6410_setup_sdhci0_cfg_gpio; 84 s3c_hsmmc0_def_platdata.cfg_gpio = s3c6410_setup_sdhci0_cfg_gpio;
81 s3c_hsmmc0_def_platdata.cfg_card = s3c6410_setup_sdhci0_cfg_card; 85 s3c_hsmmc0_def_platdata.cfg_card = s3c6410_setup_sdhci0_cfg_card;
82} 86}
87
88static inline void s3c6410_default_sdhci1(void)
89{
90 s3c_hsmmc1_def_platdata.clocks = s3c6410_hsmmc_clksrcs;
91 s3c_hsmmc1_def_platdata.cfg_gpio = s3c6410_setup_sdhci0_cfg_gpio;
92 s3c_hsmmc1_def_platdata.cfg_card = s3c6410_setup_sdhci0_cfg_card;
93}
83#else 94#else
84static inline void s3c6410_default_sdhci0(void) { } 95static inline void s3c6410_default_sdhci0(void) { }
96static inline void s3c6410_default_sdhci1(void) { }
85#endif /* CONFIG_S3C6410_SETUP_SDHCI */ 97#endif /* CONFIG_S3C6410_SETUP_SDHCI */
86 98
87#endif /* __PLAT_S3C_SDHCI_H */ 99#endif /* __PLAT_S3C_SDHCI_H */