aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ux500/cpu-db8500.c
diff options
context:
space:
mode:
authorRabin Vincent <rabin.vincent@stericsson.com>2010-09-29 10:16:32 -0400
committerLinus Walleij <linus.walleij@stericsson.com>2010-12-08 07:14:06 -0500
commitfbf1eadf950da1f5f5ed2e454d2f191f90fe1ebe (patch)
treea45df8b1d1e8e5bd76f524cff01dcf9e35d82f0a /arch/arm/mach-ux500/cpu-db8500.c
parent1bde668c8afa279d81b8f26b2120b906f38f7822 (diff)
ux500: rework device registration
Change the Ux500 devices to be dynamically allocated and added by calling functions instead of referencing structures, thereby allowing 5500 and other derivatives' support to be added without having to duplicate structures, use fixup functions, or use compile-time macros. Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Diffstat (limited to 'arch/arm/mach-ux500/cpu-db8500.c')
-rw-r--r--arch/arm/mach-ux500/cpu-db8500.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 4acab7544b3c..5966f353890f 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -22,6 +22,8 @@
22#include <mach/setup.h> 22#include <mach/setup.h>
23#include <mach/devices.h> 23#include <mach/devices.h>
24 24
25#include "devices-db8500.h"
26
25static struct platform_device *platform_devs[] __initdata = { 27static struct platform_device *platform_devs[] __initdata = {
26 &u8500_gpio_devs[0], 28 &u8500_gpio_devs[0],
27 &u8500_gpio_devs[1], 29 &u8500_gpio_devs[1],
@@ -152,12 +154,11 @@ void __init u8500_init_devices(void)
152 else 154 else
153 pr_warning("ASIC: UNKNOWN SILICON VERSION!\n"); 155 pr_warning("ASIC: UNKNOWN SILICON VERSION!\n");
154 156
155 ux500_init_devices();
156
157 if (cpu_is_u8500ed()) 157 if (cpu_is_u8500ed())
158 dma40_u8500ed_fixup(); 158 dma40_u8500ed_fixup();
159 159
160 /* Register the platform devices */ 160 db8500_add_rtc();
161
161 platform_add_devices(platform_devs, ARRAY_SIZE(platform_devs)); 162 platform_add_devices(platform_devs, ARRAY_SIZE(platform_devs));
162 163
163 return ; 164 return ;