11 #include <linux/types.h>
13 #include <linux/device.h>
24 #include <mach/hardware.h>
26 #include <mach/devices.h>
39 static struct map_desc u8500_common_io_desc[] __initdata = {
60 static struct map_desc u8500_io_desc[] __initdata = {
67 static struct map_desc u9540_io_desc[] __initdata = {
83 if (cpu_is_ux540_family())
91 static struct resource db8500_pmu_resources[] = {
120 .handle_irq = db8500_pmu_handler,
126 .num_resources =
ARRAY_SIZE(db8500_pmu_resources),
127 .resource = db8500_pmu_resources,
132 .name =
"db8500-prcmu",
138 &db8500_prcmu_device,
153 static void __init db8500_add_gpios(
struct device *parent)
156 .supports_sleepmode =
true,
161 dbx500_add_pinctrl(parent,
"pinctrl-db8500");
164 static int usb_db8500_rx_dma_cfg[] = {
175 static int usb_db8500_tx_dma_cfg[] = {
186 static const char *db8500_read_soc_id(
void)
196 static struct device *
__init db8500_soc_device_init(
void)
198 const char *soc_id = db8500_read_soc_id();
211 parent = db8500_soc_device_init();
214 db8500_add_gpios(parent);
215 db8500_add_usb(parent, usb_db8500_rx_dma_cfg, usb_db8500_tx_dma_cfg);
217 platform_device_register_data(parent,
218 "cpufreq-u8500", -1,
NULL, 0);
220 for (i = 0; i <
ARRAY_SIZE(platform_devs); i++)
221 platform_devs[i]->dev.parent = parent;
223 db8500_prcmu_device.
dev.platform_data = ab8500;
235 parent = db8500_soc_device_init();
237 db8500_add_usb(parent, usb_db8500_rx_dma_cfg, usb_db8500_tx_dma_cfg);
239 platform_device_register_data(parent,
240 "cpufreq-u8500", -1,
NULL, 0);