[PATCH 16/17] arm: ux500: add dbx540 prcmu platform data
Loic Pallardy
loic.pallardy-ext at stericsson.com
Wed Sep 5 05:59:12 EDT 2012
Add support for new dbx540-prcmu driver.
Signed-off-by: Loic Pallardy <loic.pallardy at stericsson.com>
Acked-by: Linus Walleij <linus.walleij at linaro.org>
---
arch/arm/mach-ux500/board-mop500.c | 12 ++++++++++++
arch/arm/mach-ux500/cpu-db8500.c | 7 +++++--
arch/arm/mach-ux500/include/mach/devices.h | 3 +++
3 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 0869c58..ed1507a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -600,6 +600,9 @@ static void __init mop500_init_machine(void)
mop500_pinmaps_init();
parent = u8500_init_devices(&ab8500_platdata);
+ db8500_prcmu_device.dev.parent = parent;
+ db8500_prcmu_device.dev.platform_data = &ab8500_platdata;
+ platform_device_register(&db8500_prcmu_device);
for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
mop500_platform_devs[i]->dev.parent = parent;
@@ -634,6 +637,9 @@ static void __init snowball_init_machine(void)
snowball_pinmaps_init();
parent = u8500_init_devices(&ab8500_platdata);
+ db8500_prcmu_device.dev.parent = parent;
+ db8500_prcmu_device.dev.platform_data = &ab8500_platdata;
+ platform_device_register(&db8500_prcmu_device);
for (i = 0; i < ARRAY_SIZE(snowball_platform_devs); i++)
snowball_platform_devs[i]->dev.parent = parent;
@@ -666,6 +672,9 @@ static void __init hrefv60_init_machine(void)
hrefv60_pinmaps_init();
parent = u8500_init_devices(&ab8500_platdata);
+ db8500_prcmu_device.dev.parent = parent;
+ db8500_prcmu_device.dev.platform_data = &ab8500_platdata;
+ platform_device_register(&db8500_prcmu_device);
for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
mop500_platform_devs[i]->dev.parent = parent;
@@ -702,6 +711,9 @@ static void __init u9540_init_machine(void)
ccu9540_pins_init();
parent = u8500_init_devices(&ab8500_platdata);
+ dbx540_prcmu_device.dev.parent = parent;
+ dbx540_prcmu_device.dev.platform_data = &ab8500_platdata;
+ platform_device_register(&dbx540_prcmu_device);
for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
mop500_platform_devs[i]->dev.parent = parent;
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 59dcf82..8f74c31 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -130,7 +130,7 @@ static struct platform_device db8500_pmu_device = {
.dev.platform_data = &db8500_pmu_platdata,
};
-static struct platform_device db8500_prcmu_device = {
+struct platform_device db8500_prcmu_device = {
.name = "db8500-prcmu",
};
@@ -139,6 +139,10 @@ struct prcmu_tcdm_map db8500_tcdm_map = {
.legacy_offset = 0,
};
+struct platform_device dbx540_prcmu_device = {
+ .name = "dbx540-prcmu",
+};
+
struct prcmu_tcdm_map db9540_tcdm_map = {
.tcdm_size = SZ_4K + SZ_8K,
.legacy_offset = SZ_8K,
@@ -147,7 +151,6 @@ struct prcmu_tcdm_map db9540_tcdm_map = {
static struct platform_device *platform_devs[] __initdata = {
&u8500_dma40_device,
&db8500_pmu_device,
- &db8500_prcmu_device,
};
static resource_size_t __initdata db8500_gpio_base[] = {
diff --git a/arch/arm/mach-ux500/include/mach/devices.h b/arch/arm/mach-ux500/include/mach/devices.h
index 1caa76e..5c4f92e 100644
--- a/arch/arm/mach-ux500/include/mach/devices.h
+++ b/arch/arm/mach-ux500/include/mach/devices.h
@@ -20,6 +20,9 @@ extern struct platform_device ux500_cryp1_device;
extern struct platform_device u8500_dma40_device;
extern struct platform_device ux500_ske_keypad_device;
+extern struct platform_device db8500_prcmu_device;
+extern struct platform_device dbx540_prcmu_device;
+
extern struct prcmu_tcdm_map db8500_tcdm_map;
extern struct prcmu_tcdm_map db9540_tcdm_map;
--
1.7.11.1
More information about the linux-arm-kernel
mailing list