aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-s3c/include/plat/sdhci.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/plat-s3c/include/plat/sdhci.h')
-rw-r--r--arch/arm/plat-s3c/include/plat/sdhci.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/arch/arm/plat-s3c/include/plat/sdhci.h b/arch/arm/plat-s3c/include/plat/sdhci.h
index f615308ccdfb..d5a3b41bddb9 100644
--- a/arch/arm/plat-s3c/include/plat/sdhci.h
+++ b/arch/arm/plat-s3c/include/plat/sdhci.h
@@ -57,6 +57,7 @@ struct s3c_sdhci_platdata {
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); 59extern void s3c_sdhci1_set_platdata(struct s3c_sdhci_platdata *pd);
60extern void s3c_sdhci2_set_platdata(struct s3c_sdhci_platdata *pd);
60 61
61/* Default platform data, exported so that per-cpu initialisation can 62/* Default platform data, exported so that per-cpu initialisation can
62 * set the correct one when there are more than one cpu type selected. 63 * set the correct one when there are more than one cpu type selected.
@@ -64,11 +65,13 @@ extern void s3c_sdhci1_set_platdata(struct s3c_sdhci_platdata *pd);
64 65
65extern struct s3c_sdhci_platdata s3c_hsmmc0_def_platdata; 66extern struct s3c_sdhci_platdata s3c_hsmmc0_def_platdata;
66extern struct s3c_sdhci_platdata s3c_hsmmc1_def_platdata; 67extern struct s3c_sdhci_platdata s3c_hsmmc1_def_platdata;
68extern struct s3c_sdhci_platdata s3c_hsmmc2_def_platdata;
67 69
68/* Helper function availablity */ 70/* Helper function availablity */
69 71
70extern void s3c64xx_setup_sdhci0_cfg_gpio(struct platform_device *, int w); 72extern void s3c64xx_setup_sdhci0_cfg_gpio(struct platform_device *, int w);
71extern void s3c64xx_setup_sdhci1_cfg_gpio(struct platform_device *, int w); 73extern void s3c64xx_setup_sdhci1_cfg_gpio(struct platform_device *, int w);
74extern void s3c64xx_setup_sdhci2_cfg_gpio(struct platform_device *, int w);
72 75
73/* S3C6400 SDHCI setup */ 76/* S3C6400 SDHCI setup */
74 77
@@ -103,6 +106,17 @@ static inline void s3c6400_default_sdhci1(void)
103static inline void s3c6400_default_sdhci1(void) { } 106static inline void s3c6400_default_sdhci1(void) { }
104#endif /* CONFIG_S3C_DEV_HSMMC1 */ 107#endif /* CONFIG_S3C_DEV_HSMMC1 */
105 108
109#ifdef CONFIG_S3C_DEV_HSMMC2
110static inline void s3c6400_default_sdhci2(void)
111{
112 s3c_hsmmc2_def_platdata.clocks = s3c6400_hsmmc_clksrcs;
113 s3c_hsmmc2_def_platdata.cfg_gpio = s3c64xx_setup_sdhci2_cfg_gpio;
114 s3c_hsmmc2_def_platdata.cfg_card = s3c6400_setup_sdhci_cfg_card;
115}
116#else
117static inline void s3c6400_default_sdhci2(void) { }
118#endif /* CONFIG_S3C_DEV_HSMMC2 */
119
106#else 120#else
107static inline void s3c6400_default_sdhci0(void) { } 121static inline void s3c6400_default_sdhci0(void) { }
108static inline void s3c6400_default_sdhci1(void) { } 122static inline void s3c6400_default_sdhci1(void) { }
@@ -140,6 +154,17 @@ static inline void s3c6410_default_sdhci1(void)
140static inline void s3c6410_default_sdhci1(void) { } 154static inline void s3c6410_default_sdhci1(void) { }
141#endif /* CONFIG_S3C_DEV_HSMMC1 */ 155#endif /* CONFIG_S3C_DEV_HSMMC1 */
142 156
157#ifdef CONFIG_S3C_DEV_HSMMC2
158static inline void s3c6410_default_sdhci2(void)
159{
160 s3c_hsmmc2_def_platdata.clocks = s3c6410_hsmmc_clksrcs;
161 s3c_hsmmc2_def_platdata.cfg_gpio = s3c64xx_setup_sdhci2_cfg_gpio;
162 s3c_hsmmc2_def_platdata.cfg_card = s3c6410_setup_sdhci0_cfg_card;
163}
164#else
165static inline void s3c6410_default_sdhci2(void) { }
166#endif /* CONFIG_S3C_DEV_HSMMC2 */
167
143#else 168#else
144static inline void s3c6410_default_sdhci0(void) { } 169static inline void s3c6410_default_sdhci0(void) { }
145static inline void s3c6410_default_sdhci1(void) { } 170static inline void s3c6410_default_sdhci1(void) { }