diff options
author | Haojian Zhuang <haojian.zhuang@linaro.org> | 2013-04-07 04:44:33 -0400 |
---|---|---|
committer | Haojian Zhuang <haojian.zhuang@linaro.org> | 2013-04-10 21:59:23 -0400 |
commit | 2cab0292285ce3180224c130d2fb1104aee44ff1 (patch) | |
tree | a3f8bea618053618e7e1461b743ac7cb6e444454 /arch/arm | |
parent | 31880c37c11e28cb81c70757e38392b42e695dc6 (diff) |
ARM: pxa: remove cpu_is_xxx in gpio driver
Avoid to use cpu_is_xxx() in pxa gpio driver. Use platform_device_id
to identify the difference.
Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-mmp/clock-mmp2.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mmp/clock-pxa168.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mmp/clock-pxa910.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mmp/mmp-dt.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-mmp/mmp2-dt.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mmp/mmp2.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mmp/pxa168.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mmp/pxa910.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-pxa/devices.c | 29 | ||||
-rw-r--r-- | arch/arm/mach-pxa/devices.h | 6 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa25x.c | 8 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa27x.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa3xx.c | 14 | ||||
-rw-r--r-- | arch/arm/mach-pxa/pxa930.c | 5 |
14 files changed, 64 insertions, 20 deletions
diff --git a/arch/arm/mach-mmp/clock-mmp2.c b/arch/arm/mach-mmp/clock-mmp2.c index 21d22002cd19..53d77cbd6000 100644 --- a/arch/arm/mach-mmp/clock-mmp2.c +++ b/arch/arm/mach-mmp/clock-mmp2.c | |||
@@ -98,7 +98,7 @@ static struct clk_lookup mmp2_clkregs[] = { | |||
98 | INIT_CLKREG(&clk_twsi5, "pxa2xx-i2c.4", NULL), | 98 | INIT_CLKREG(&clk_twsi5, "pxa2xx-i2c.4", NULL), |
99 | INIT_CLKREG(&clk_twsi6, "pxa2xx-i2c.5", NULL), | 99 | INIT_CLKREG(&clk_twsi6, "pxa2xx-i2c.5", NULL), |
100 | INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), | 100 | INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), |
101 | INIT_CLKREG(&clk_gpio, "pxa-gpio", NULL), | 101 | INIT_CLKREG(&clk_gpio, "mmp2-gpio", NULL), |
102 | INIT_CLKREG(&clk_sdh0, "sdhci-pxav3.0", "PXA-SDHCLK"), | 102 | INIT_CLKREG(&clk_sdh0, "sdhci-pxav3.0", "PXA-SDHCLK"), |
103 | INIT_CLKREG(&clk_sdh1, "sdhci-pxav3.1", "PXA-SDHCLK"), | 103 | INIT_CLKREG(&clk_sdh1, "sdhci-pxav3.1", "PXA-SDHCLK"), |
104 | INIT_CLKREG(&clk_sdh2, "sdhci-pxav3.2", "PXA-SDHCLK"), | 104 | INIT_CLKREG(&clk_sdh2, "sdhci-pxav3.2", "PXA-SDHCLK"), |
diff --git a/arch/arm/mach-mmp/clock-pxa168.c b/arch/arm/mach-mmp/clock-pxa168.c index 5e6c18ccebd4..c572f219ae26 100644 --- a/arch/arm/mach-mmp/clock-pxa168.c +++ b/arch/arm/mach-mmp/clock-pxa168.c | |||
@@ -78,7 +78,7 @@ static struct clk_lookup pxa168_clkregs[] = { | |||
78 | INIT_CLKREG(&clk_ssp5, "pxa168-ssp.4", NULL), | 78 | INIT_CLKREG(&clk_ssp5, "pxa168-ssp.4", NULL), |
79 | INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), | 79 | INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), |
80 | INIT_CLKREG(&clk_lcd, "pxa168-fb", NULL), | 80 | INIT_CLKREG(&clk_lcd, "pxa168-fb", NULL), |
81 | INIT_CLKREG(&clk_gpio, "pxa-gpio", NULL), | 81 | INIT_CLKREG(&clk_gpio, "mmp-gpio", NULL), |
82 | INIT_CLKREG(&clk_keypad, "pxa27x-keypad", NULL), | 82 | INIT_CLKREG(&clk_keypad, "pxa27x-keypad", NULL), |
83 | INIT_CLKREG(&clk_eth, "pxa168-eth", "MFUCLK"), | 83 | INIT_CLKREG(&clk_eth, "pxa168-eth", "MFUCLK"), |
84 | INIT_CLKREG(&clk_usb, NULL, "PXA168-USBCLK"), | 84 | INIT_CLKREG(&clk_usb, NULL, "PXA168-USBCLK"), |
diff --git a/arch/arm/mach-mmp/clock-pxa910.c b/arch/arm/mach-mmp/clock-pxa910.c index 933ea71d0b56..379e1df61c70 100644 --- a/arch/arm/mach-mmp/clock-pxa910.c +++ b/arch/arm/mach-mmp/clock-pxa910.c | |||
@@ -56,7 +56,7 @@ static struct clk_lookup pxa910_clkregs[] = { | |||
56 | INIT_CLKREG(&clk_pwm3, "pxa910-pwm.2", NULL), | 56 | INIT_CLKREG(&clk_pwm3, "pxa910-pwm.2", NULL), |
57 | INIT_CLKREG(&clk_pwm4, "pxa910-pwm.3", NULL), | 57 | INIT_CLKREG(&clk_pwm4, "pxa910-pwm.3", NULL), |
58 | INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), | 58 | INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), |
59 | INIT_CLKREG(&clk_gpio, "pxa-gpio", NULL), | 59 | INIT_CLKREG(&clk_gpio, "mmp-gpio", NULL), |
60 | INIT_CLKREG(&clk_u2o, NULL, "U2OCLK"), | 60 | INIT_CLKREG(&clk_u2o, NULL, "U2OCLK"), |
61 | INIT_CLKREG(&clk_rtc, "sa1100-rtc", NULL), | 61 | INIT_CLKREG(&clk_rtc, "sa1100-rtc", NULL), |
62 | }; | 62 | }; |
diff --git a/arch/arm/mach-mmp/mmp-dt.c b/arch/arm/mach-mmp/mmp-dt.c index d063efa0a4f1..5b890b686952 100644 --- a/arch/arm/mach-mmp/mmp-dt.c +++ b/arch/arm/mach-mmp/mmp-dt.c | |||
@@ -28,7 +28,7 @@ static const struct of_dev_auxdata pxa168_auxdata_lookup[] __initconst = { | |||
28 | OF_DEV_AUXDATA("mrvl,mmp-uart", 0xd4026000, "pxa2xx-uart.2", NULL), | 28 | OF_DEV_AUXDATA("mrvl,mmp-uart", 0xd4026000, "pxa2xx-uart.2", NULL), |
29 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4011000, "pxa2xx-i2c.0", NULL), | 29 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4011000, "pxa2xx-i2c.0", NULL), |
30 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4025000, "pxa2xx-i2c.1", NULL), | 30 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4025000, "pxa2xx-i2c.1", NULL), |
31 | OF_DEV_AUXDATA("mrvl,mmp-gpio", 0xd4019000, "pxa-gpio", NULL), | 31 | OF_DEV_AUXDATA("mrvl,mmp-gpio", 0xd4019000, "mmp-gpio", NULL), |
32 | OF_DEV_AUXDATA("mrvl,mmp-rtc", 0xd4010000, "sa1100-rtc", NULL), | 32 | OF_DEV_AUXDATA("mrvl,mmp-rtc", 0xd4010000, "sa1100-rtc", NULL), |
33 | {} | 33 | {} |
34 | }; | 34 | }; |
@@ -39,7 +39,7 @@ static const struct of_dev_auxdata pxa910_auxdata_lookup[] __initconst = { | |||
39 | OF_DEV_AUXDATA("mrvl,mmp-uart", 0xd4036000, "pxa2xx-uart.2", NULL), | 39 | OF_DEV_AUXDATA("mrvl,mmp-uart", 0xd4036000, "pxa2xx-uart.2", NULL), |
40 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4011000, "pxa2xx-i2c.0", NULL), | 40 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4011000, "pxa2xx-i2c.0", NULL), |
41 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4037000, "pxa2xx-i2c.1", NULL), | 41 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4037000, "pxa2xx-i2c.1", NULL), |
42 | OF_DEV_AUXDATA("mrvl,mmp-gpio", 0xd4019000, "pxa-gpio", NULL), | 42 | OF_DEV_AUXDATA("mrvl,mmp-gpio", 0xd4019000, "mmp-gpio", NULL), |
43 | OF_DEV_AUXDATA("mrvl,mmp-rtc", 0xd4010000, "sa1100-rtc", NULL), | 43 | OF_DEV_AUXDATA("mrvl,mmp-rtc", 0xd4010000, "sa1100-rtc", NULL), |
44 | {} | 44 | {} |
45 | }; | 45 | }; |
diff --git a/arch/arm/mach-mmp/mmp2-dt.c b/arch/arm/mach-mmp/mmp2-dt.c index fad431aa6e09..924b6e838e50 100644 --- a/arch/arm/mach-mmp/mmp2-dt.c +++ b/arch/arm/mach-mmp/mmp2-dt.c | |||
@@ -31,7 +31,7 @@ static const struct of_dev_auxdata mmp2_auxdata_lookup[] __initconst = { | |||
31 | OF_DEV_AUXDATA("mrvl,mmp-uart", 0xd4016000, "pxa2xx-uart.3", NULL), | 31 | OF_DEV_AUXDATA("mrvl,mmp-uart", 0xd4016000, "pxa2xx-uart.3", NULL), |
32 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4011000, "pxa2xx-i2c.0", NULL), | 32 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4011000, "pxa2xx-i2c.0", NULL), |
33 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4025000, "pxa2xx-i2c.1", NULL), | 33 | OF_DEV_AUXDATA("mrvl,mmp-twsi", 0xd4025000, "pxa2xx-i2c.1", NULL), |
34 | OF_DEV_AUXDATA("mrvl,mmp-gpio", 0xd4019000, "pxa-gpio", NULL), | 34 | OF_DEV_AUXDATA("mrvl,mmp-gpio", 0xd4019000, "mmp2-gpio", NULL), |
35 | OF_DEV_AUXDATA("mrvl,mmp-rtc", 0xd4010000, "sa1100-rtc", NULL), | 35 | OF_DEV_AUXDATA("mrvl,mmp-rtc", 0xd4010000, "sa1100-rtc", NULL), |
36 | {} | 36 | {} |
37 | }; | 37 | }; |
diff --git a/arch/arm/mach-mmp/mmp2.c b/arch/arm/mach-mmp/mmp2.c index d94d114eef7b..c7592f168bbd 100644 --- a/arch/arm/mach-mmp/mmp2.c +++ b/arch/arm/mach-mmp/mmp2.c | |||
@@ -164,7 +164,7 @@ struct resource mmp2_resource_gpio[] = { | |||
164 | }; | 164 | }; |
165 | 165 | ||
166 | struct platform_device mmp2_device_gpio = { | 166 | struct platform_device mmp2_device_gpio = { |
167 | .name = "pxa-gpio", | 167 | .name = "mmp2-gpio", |
168 | .id = -1, | 168 | .id = -1, |
169 | .num_resources = ARRAY_SIZE(mmp2_resource_gpio), | 169 | .num_resources = ARRAY_SIZE(mmp2_resource_gpio), |
170 | .resource = mmp2_resource_gpio, | 170 | .resource = mmp2_resource_gpio, |
diff --git a/arch/arm/mach-mmp/pxa168.c b/arch/arm/mach-mmp/pxa168.c index 9bc7b86a86a7..a30dcf3b7d9e 100644 --- a/arch/arm/mach-mmp/pxa168.c +++ b/arch/arm/mach-mmp/pxa168.c | |||
@@ -125,7 +125,7 @@ struct resource pxa168_resource_gpio[] = { | |||
125 | }; | 125 | }; |
126 | 126 | ||
127 | struct platform_device pxa168_device_gpio = { | 127 | struct platform_device pxa168_device_gpio = { |
128 | .name = "pxa-gpio", | 128 | .name = "mmp-gpio", |
129 | .id = -1, | 129 | .id = -1, |
130 | .num_resources = ARRAY_SIZE(pxa168_resource_gpio), | 130 | .num_resources = ARRAY_SIZE(pxa168_resource_gpio), |
131 | .resource = pxa168_resource_gpio, | 131 | .resource = pxa168_resource_gpio, |
diff --git a/arch/arm/mach-mmp/pxa910.c b/arch/arm/mach-mmp/pxa910.c index 36cb321a3d70..ce6393acad86 100644 --- a/arch/arm/mach-mmp/pxa910.c +++ b/arch/arm/mach-mmp/pxa910.c | |||
@@ -152,7 +152,7 @@ struct resource pxa910_resource_gpio[] = { | |||
152 | }; | 152 | }; |
153 | 153 | ||
154 | struct platform_device pxa910_device_gpio = { | 154 | struct platform_device pxa910_device_gpio = { |
155 | .name = "pxa-gpio", | 155 | .name = "mmp-gpio", |
156 | .id = -1, | 156 | .id = -1, |
157 | .num_resources = ARRAY_SIZE(pxa910_resource_gpio), | 157 | .num_resources = ARRAY_SIZE(pxa910_resource_gpio), |
158 | .resource = pxa910_resource_gpio, | 158 | .resource = pxa910_resource_gpio, |
diff --git a/arch/arm/mach-pxa/devices.c b/arch/arm/mach-pxa/devices.c index daa86d39ed9e..666094315ab1 100644 --- a/arch/arm/mach-pxa/devices.c +++ b/arch/arm/mach-pxa/devices.c | |||
@@ -1107,8 +1107,33 @@ struct resource pxa_resource_gpio[] = { | |||
1107 | }, | 1107 | }, |
1108 | }; | 1108 | }; |
1109 | 1109 | ||
1110 | struct platform_device pxa_device_gpio = { | 1110 | struct platform_device pxa25x_device_gpio = { |
1111 | .name = "pxa-gpio", | 1111 | #ifdef CONFIG_CPU_PXA26x |
1112 | .name = "pxa26x-gpio", | ||
1113 | #else | ||
1114 | .name = "pxa25x-gpio", | ||
1115 | #endif | ||
1116 | .id = -1, | ||
1117 | .num_resources = ARRAY_SIZE(pxa_resource_gpio), | ||
1118 | .resource = pxa_resource_gpio, | ||
1119 | }; | ||
1120 | |||
1121 | struct platform_device pxa27x_device_gpio = { | ||
1122 | .name = "pxa27x-gpio", | ||
1123 | .id = -1, | ||
1124 | .num_resources = ARRAY_SIZE(pxa_resource_gpio), | ||
1125 | .resource = pxa_resource_gpio, | ||
1126 | }; | ||
1127 | |||
1128 | struct platform_device pxa3xx_device_gpio = { | ||
1129 | .name = "pxa3xx-gpio", | ||
1130 | .id = -1, | ||
1131 | .num_resources = ARRAY_SIZE(pxa_resource_gpio), | ||
1132 | .resource = pxa_resource_gpio, | ||
1133 | }; | ||
1134 | |||
1135 | struct platform_device pxa93x_device_gpio = { | ||
1136 | .name = "pxa93x-gpio", | ||
1112 | .id = -1, | 1137 | .id = -1, |
1113 | .num_resources = ARRAY_SIZE(pxa_resource_gpio), | 1138 | .num_resources = ARRAY_SIZE(pxa_resource_gpio), |
1114 | .resource = pxa_resource_gpio, | 1139 | .resource = pxa_resource_gpio, |
diff --git a/arch/arm/mach-pxa/devices.h b/arch/arm/mach-pxa/devices.h index 1475db107254..0f3fd0d65b12 100644 --- a/arch/arm/mach-pxa/devices.h +++ b/arch/arm/mach-pxa/devices.h | |||
@@ -16,7 +16,6 @@ extern struct platform_device pxa_device_ficp; | |||
16 | extern struct platform_device sa1100_device_rtc; | 16 | extern struct platform_device sa1100_device_rtc; |
17 | extern struct platform_device pxa_device_rtc; | 17 | extern struct platform_device pxa_device_rtc; |
18 | extern struct platform_device pxa_device_ac97; | 18 | extern struct platform_device pxa_device_ac97; |
19 | extern struct platform_device pxa_device_gpio; | ||
20 | 19 | ||
21 | extern struct platform_device pxa27x_device_i2c_power; | 20 | extern struct platform_device pxa27x_device_i2c_power; |
22 | extern struct platform_device pxa27x_device_ohci; | 21 | extern struct platform_device pxa27x_device_ohci; |
@@ -46,4 +45,9 @@ extern struct platform_device pxa_device_asoc_ssp2; | |||
46 | extern struct platform_device pxa_device_asoc_ssp3; | 45 | extern struct platform_device pxa_device_asoc_ssp3; |
47 | extern struct platform_device pxa_device_asoc_ssp4; | 46 | extern struct platform_device pxa_device_asoc_ssp4; |
48 | 47 | ||
48 | extern struct platform_device pxa25x_device_gpio; | ||
49 | extern struct platform_device pxa27x_device_gpio; | ||
50 | extern struct platform_device pxa3xx_device_gpio; | ||
51 | extern struct platform_device pxa93x_device_gpio; | ||
52 | |||
49 | void __init pxa_register_device(struct platform_device *dev, void *data); | 53 | void __init pxa_register_device(struct platform_device *dev, void *data); |
diff --git a/arch/arm/mach-pxa/pxa25x.c b/arch/arm/mach-pxa/pxa25x.c index 3f5171eaf67b..e31a8812cf0d 100644 --- a/arch/arm/mach-pxa/pxa25x.c +++ b/arch/arm/mach-pxa/pxa25x.c | |||
@@ -208,7 +208,11 @@ static struct clk_lookup pxa25x_clkregs[] = { | |||
208 | INIT_CLKREG(&clk_pxa25x_gpio11, NULL, "GPIO11_CLK"), | 208 | INIT_CLKREG(&clk_pxa25x_gpio11, NULL, "GPIO11_CLK"), |
209 | INIT_CLKREG(&clk_pxa25x_gpio12, NULL, "GPIO12_CLK"), | 209 | INIT_CLKREG(&clk_pxa25x_gpio12, NULL, "GPIO12_CLK"), |
210 | INIT_CLKREG(&clk_pxa25x_mem, "pxa2xx-pcmcia", NULL), | 210 | INIT_CLKREG(&clk_pxa25x_mem, "pxa2xx-pcmcia", NULL), |
211 | INIT_CLKREG(&clk_dummy, "pxa-gpio", NULL), | 211 | #ifdef CONFIG_CPU_PXA26x |
212 | INIT_CLKREG(&clk_dummy, "pxa26x-gpio", NULL), | ||
213 | #else | ||
214 | INIT_CLKREG(&clk_dummy, "pxa25x-gpio", NULL), | ||
215 | #endif | ||
212 | INIT_CLKREG(&clk_dummy, "sa1100-rtc", NULL), | 216 | INIT_CLKREG(&clk_dummy, "sa1100-rtc", NULL), |
213 | }; | 217 | }; |
214 | 218 | ||
@@ -375,7 +379,7 @@ static int __init pxa25x_init(void) | |||
375 | register_syscore_ops(&pxa2xx_mfp_syscore_ops); | 379 | register_syscore_ops(&pxa2xx_mfp_syscore_ops); |
376 | register_syscore_ops(&pxa2xx_clock_syscore_ops); | 380 | register_syscore_ops(&pxa2xx_clock_syscore_ops); |
377 | 381 | ||
378 | pxa_register_device(&pxa_device_gpio, &pxa25x_gpio_info); | 382 | pxa_register_device(&pxa25x_device_gpio, &pxa25x_gpio_info); |
379 | ret = platform_add_devices(pxa25x_devices, | 383 | ret = platform_add_devices(pxa25x_devices, |
380 | ARRAY_SIZE(pxa25x_devices)); | 384 | ARRAY_SIZE(pxa25x_devices)); |
381 | if (ret) | 385 | if (ret) |
diff --git a/arch/arm/mach-pxa/pxa27x.c b/arch/arm/mach-pxa/pxa27x.c index 3203a9f5b4a2..7635ec5c9a1d 100644 --- a/arch/arm/mach-pxa/pxa27x.c +++ b/arch/arm/mach-pxa/pxa27x.c | |||
@@ -237,7 +237,7 @@ static struct clk_lookup pxa27x_clkregs[] = { | |||
237 | INIT_CLKREG(&clk_pxa27x_im, NULL, "IMCLK"), | 237 | INIT_CLKREG(&clk_pxa27x_im, NULL, "IMCLK"), |
238 | INIT_CLKREG(&clk_pxa27x_memc, NULL, "MEMCLK"), | 238 | INIT_CLKREG(&clk_pxa27x_memc, NULL, "MEMCLK"), |
239 | INIT_CLKREG(&clk_pxa27x_mem, "pxa2xx-pcmcia", NULL), | 239 | INIT_CLKREG(&clk_pxa27x_mem, "pxa2xx-pcmcia", NULL), |
240 | INIT_CLKREG(&clk_dummy, "pxa-gpio", NULL), | 240 | INIT_CLKREG(&clk_dummy, "pxa27x-gpio", NULL), |
241 | INIT_CLKREG(&clk_dummy, "sa1100-rtc", NULL), | 241 | INIT_CLKREG(&clk_dummy, "sa1100-rtc", NULL), |
242 | }; | 242 | }; |
243 | 243 | ||
@@ -470,7 +470,7 @@ static int __init pxa27x_init(void) | |||
470 | register_syscore_ops(&pxa2xx_mfp_syscore_ops); | 470 | register_syscore_ops(&pxa2xx_mfp_syscore_ops); |
471 | register_syscore_ops(&pxa2xx_clock_syscore_ops); | 471 | register_syscore_ops(&pxa2xx_clock_syscore_ops); |
472 | 472 | ||
473 | pxa_register_device(&pxa_device_gpio, &pxa27x_gpio_info); | 473 | pxa_register_device(&pxa27x_device_gpio, &pxa27x_gpio_info); |
474 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); | 474 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); |
475 | } | 475 | } |
476 | 476 | ||
diff --git a/arch/arm/mach-pxa/pxa3xx.c b/arch/arm/mach-pxa/pxa3xx.c index 656a1bb16d14..572666a1e4a8 100644 --- a/arch/arm/mach-pxa/pxa3xx.c +++ b/arch/arm/mach-pxa/pxa3xx.c | |||
@@ -92,7 +92,8 @@ static struct clk_lookup pxa3xx_clkregs[] = { | |||
92 | INIT_CLKREG(&clk_pxa3xx_mmc1, "pxa2xx-mci.0", NULL), | 92 | INIT_CLKREG(&clk_pxa3xx_mmc1, "pxa2xx-mci.0", NULL), |
93 | INIT_CLKREG(&clk_pxa3xx_mmc2, "pxa2xx-mci.1", NULL), | 93 | INIT_CLKREG(&clk_pxa3xx_mmc2, "pxa2xx-mci.1", NULL), |
94 | INIT_CLKREG(&clk_pxa3xx_smemc, "pxa2xx-pcmcia", NULL), | 94 | INIT_CLKREG(&clk_pxa3xx_smemc, "pxa2xx-pcmcia", NULL), |
95 | INIT_CLKREG(&clk_pxa3xx_gpio, "pxa-gpio", NULL), | 95 | INIT_CLKREG(&clk_pxa3xx_gpio, "pxa3xx-gpio", NULL), |
96 | INIT_CLKREG(&clk_pxa3xx_gpio, "pxa93x-gpio", NULL), | ||
96 | INIT_CLKREG(&clk_dummy, "sa1100-rtc", NULL), | 97 | INIT_CLKREG(&clk_dummy, "sa1100-rtc", NULL), |
97 | }; | 98 | }; |
98 | 99 | ||
@@ -436,7 +437,6 @@ void __init pxa3xx_set_i2c_power_info(struct i2c_pxa_platform_data *info) | |||
436 | } | 437 | } |
437 | 438 | ||
438 | static struct platform_device *devices[] __initdata = { | 439 | static struct platform_device *devices[] __initdata = { |
439 | &pxa_device_gpio, | ||
440 | &pxa27x_device_udc, | 440 | &pxa27x_device_udc, |
441 | &pxa_device_pmu, | 441 | &pxa_device_pmu, |
442 | &pxa_device_i2s, | 442 | &pxa_device_i2s, |
@@ -482,8 +482,14 @@ static int __init pxa3xx_init(void) | |||
482 | register_syscore_ops(&pxa3xx_mfp_syscore_ops); | 482 | register_syscore_ops(&pxa3xx_mfp_syscore_ops); |
483 | register_syscore_ops(&pxa3xx_clock_syscore_ops); | 483 | register_syscore_ops(&pxa3xx_clock_syscore_ops); |
484 | 484 | ||
485 | if (!of_have_populated_dt()) | 485 | if (of_have_populated_dt()) |
486 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); | 486 | return 0; |
487 | |||
488 | ret = platform_add_devices(devices, ARRAY_SIZE(devices)); | ||
489 | if (ret) | ||
490 | return ret; | ||
491 | if (cpu_is_pxa300() || cpu_is_pxa310() || cpu_is_pxa320()) | ||
492 | ret = platform_device_register(&pxa3xx_device_gpio); | ||
487 | } | 493 | } |
488 | 494 | ||
489 | return ret; | 495 | return ret; |
diff --git a/arch/arm/mach-pxa/pxa930.c b/arch/arm/mach-pxa/pxa930.c index 8aeacf908784..4693a78948aa 100644 --- a/arch/arm/mach-pxa/pxa930.c +++ b/arch/arm/mach-pxa/pxa930.c | |||
@@ -18,6 +18,8 @@ | |||
18 | 18 | ||
19 | #include <mach/pxa930.h> | 19 | #include <mach/pxa930.h> |
20 | 20 | ||
21 | #include "devices.h" | ||
22 | |||
21 | static struct mfp_addr_map pxa930_mfp_addr_map[] __initdata = { | 23 | static struct mfp_addr_map pxa930_mfp_addr_map[] __initdata = { |
22 | 24 | ||
23 | MFP_ADDR(GPIO0, 0x02e0), | 25 | MFP_ADDR(GPIO0, 0x02e0), |
@@ -192,9 +194,12 @@ static struct mfp_addr_map pxa935_mfp_addr_map[] __initdata = { | |||
192 | 194 | ||
193 | static int __init pxa930_init(void) | 195 | static int __init pxa930_init(void) |
194 | { | 196 | { |
197 | int ret = 0; | ||
198 | |||
195 | if (cpu_is_pxa93x()) { | 199 | if (cpu_is_pxa93x()) { |
196 | mfp_init_base(io_p2v(MFPR_BASE)); | 200 | mfp_init_base(io_p2v(MFPR_BASE)); |
197 | mfp_init_addr(pxa930_mfp_addr_map); | 201 | mfp_init_addr(pxa930_mfp_addr_map); |
202 | ret = platform_device_register(&pxa93x_device_gpio); | ||
198 | } | 203 | } |
199 | 204 | ||
200 | if (cpu_is_pxa935()) | 205 | if (cpu_is_pxa935()) |