aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-samsung/platformdata.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/plat-samsung/platformdata.c')
-rw-r--r--arch/arm/plat-samsung/platformdata.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/arch/arm/plat-samsung/platformdata.c b/arch/arm/plat-samsung/platformdata.c
index 7cf2e1e3b20f..ceb9fa3a80c0 100644
--- a/arch/arm/plat-samsung/platformdata.c
+++ b/arch/arm/plat-samsung/platformdata.c
@@ -10,10 +10,12 @@
10*/ 10*/
11 11
12#include <linux/kernel.h> 12#include <linux/kernel.h>
13#include <linux/slab.h>
13#include <linux/string.h> 14#include <linux/string.h>
14#include <linux/platform_device.h> 15#include <linux/platform_device.h>
15 16
16#include <plat/devs.h> 17#include <plat/devs.h>
18#include <plat/sdhci.h>
17 19
18void __init *s3c_set_platdata(void *pd, size_t pdsize, 20void __init *s3c_set_platdata(void *pd, size_t pdsize,
19 struct platform_device *pdev) 21 struct platform_device *pdev)
@@ -35,3 +37,22 @@ void __init *s3c_set_platdata(void *pd, size_t pdsize,
35 pdev->dev.platform_data = npd; 37 pdev->dev.platform_data = npd;
36 return npd; 38 return npd;
37} 39}
40
41void s3c_sdhci_set_platdata(struct s3c_sdhci_platdata *pd,
42 struct s3c_sdhci_platdata *set)
43{
44 set->cd_type = pd->cd_type;
45 set->ext_cd_init = pd->ext_cd_init;
46 set->ext_cd_cleanup = pd->ext_cd_cleanup;
47 set->ext_cd_gpio = pd->ext_cd_gpio;
48 set->ext_cd_gpio_invert = pd->ext_cd_gpio_invert;
49
50 if (pd->max_width)
51 set->max_width = pd->max_width;
52 if (pd->cfg_gpio)
53 set->cfg_gpio = pd->cfg_gpio;
54 if (pd->host_caps)
55 set->host_caps |= pd->host_caps;
56 if (pd->clk_type)
57 set->clk_type = pd->clk_type;
58}