aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ux500/cpu-db8500.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-ux500/cpu-db8500.c')
-rw-r--r--arch/arm/mach-ux500/cpu-db8500.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 33275eb4c689..db3c52d56ca4 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -16,6 +16,7 @@
16#include <linux/irq.h> 16#include <linux/irq.h>
17#include <linux/platform_device.h> 17#include <linux/platform_device.h>
18#include <linux/io.h> 18#include <linux/io.h>
19#include <linux/mfd/abx500/ab8500.h>
19 20
20#include <asm/mach/map.h> 21#include <asm/mach/map.h>
21#include <asm/pmu.h> 22#include <asm/pmu.h>
@@ -115,7 +116,7 @@ static irqreturn_t db8500_pmu_handler(int irq, void *dev, irq_handler_t handler)
115 return ret; 116 return ret;
116} 117}
117 118
118static struct arm_pmu_platdata db8500_pmu_platdata = { 119struct arm_pmu_platdata db8500_pmu_platdata = {
119 .handle_irq = db8500_pmu_handler, 120 .handle_irq = db8500_pmu_handler,
120}; 121};
121 122
@@ -139,7 +140,6 @@ static struct platform_device *platform_devs[] __initdata = {
139 140
140static struct platform_device *of_platform_devs[] __initdata = { 141static struct platform_device *of_platform_devs[] __initdata = {
141 &u8500_dma40_device, 142 &u8500_dma40_device,
142 &db8500_pmu_device,
143}; 143};
144 144
145static resource_size_t __initdata db8500_gpio_base[] = { 145static resource_size_t __initdata db8500_gpio_base[] = {
@@ -207,7 +207,7 @@ static struct device * __init db8500_soc_device_init(void)
207/* 207/*
208 * This function is called from the board init 208 * This function is called from the board init
209 */ 209 */
210struct device * __init u8500_init_devices(void) 210struct device * __init u8500_init_devices(struct ab8500_platform_data *ab8500)
211{ 211{
212 struct device *parent; 212 struct device *parent;
213 int i; 213 int i;
@@ -224,6 +224,8 @@ struct device * __init u8500_init_devices(void)
224 for (i = 0; i < ARRAY_SIZE(platform_devs); i++) 224 for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
225 platform_devs[i]->dev.parent = parent; 225 platform_devs[i]->dev.parent = parent;
226 226
227 db8500_prcmu_device.dev.platform_data = ab8500;
228
227 platform_add_devices(platform_devs, ARRAY_SIZE(platform_devs)); 229 platform_add_devices(platform_devs, ARRAY_SIZE(platform_devs));
228 230
229 return parent; 231 return parent;
@@ -237,7 +239,6 @@ struct device * __init u8500_of_init_devices(void)
237 239
238 parent = db8500_soc_device_init(); 240 parent = db8500_soc_device_init();
239 241
240 db8500_add_rtc(parent);
241 db8500_add_usb(parent, usb_db8500_rx_dma_cfg, usb_db8500_tx_dma_cfg); 242 db8500_add_usb(parent, usb_db8500_rx_dma_cfg, usb_db8500_tx_dma_cfg);
242 243
243 platform_device_register_data(parent, 244 platform_device_register_data(parent,
@@ -249,7 +250,7 @@ struct device * __init u8500_of_init_devices(void)
249 /* 250 /*
250 * Devices to be DT:ed: 251 * Devices to be DT:ed:
251 * u8500_dma40_device = todo 252 * u8500_dma40_device = todo
252 * db8500_pmu_device = todo 253 * db8500_pmu_device = done
253 * db8500_prcmu_device = done 254 * db8500_prcmu_device = done
254 */ 255 */
255 platform_add_devices(of_platform_devs, ARRAY_SIZE(of_platform_devs)); 256 platform_add_devices(of_platform_devs, ARRAY_SIZE(of_platform_devs));