summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-pxa/pxa27x.c
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2007-05-15 11:39:49 +0200
committerRussell King <rmk+kernel@arm.linux.org.uk>2007-07-12 15:28:21 +0200
commit34f3231f435dfb8e6c83271c63461fdd2901dc97 (patch)
treedd9d3f4fffcc07c68a4cf5ef00c28a954e89f751 /arch/arm/mach-pxa/pxa27x.c
parent[ARM] pxa: remove boot time RTC initialisation (diff)
downloadlinux-34f3231f435dfb8e6c83271c63461fdd2901dc97.tar.xz
linux-34f3231f435dfb8e6c83271c63461fdd2901dc97.zip
[ARM] pxa: move device registration into CPU-specific file
This allows individual CPU support to determine which platform devices should be registered. Also fix a copy-n-paste bug in the I2C power platform device entry. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-pxa/pxa27x.c')
-rw-r--r--arch/arm/mach-pxa/pxa27x.c36
1 files changed, 33 insertions, 3 deletions
diff --git a/arch/arm/mach-pxa/pxa27x.c b/arch/arm/mach-pxa/pxa27x.c
index 5b819e2c5563..27fd2fa56eaf 100644
--- a/arch/arm/mach-pxa/pxa27x.c
+++ b/arch/arm/mach-pxa/pxa27x.c
@@ -184,7 +184,7 @@ static struct resource pxa27x_ohci_resources[] = {
},
};
-static struct platform_device ohci_device = {
+static struct platform_device pxaohci_device = {
.name = "pxa27x-ohci",
.id = -1,
.dev = {
@@ -197,11 +197,41 @@ static struct platform_device ohci_device = {
void __init pxa_set_ohci_info(struct pxaohci_platform_data *info)
{
- ohci_device.dev.platform_data = info;
+ pxaohci_device.dev.platform_data = info;
}
+static struct resource i2c_power_resources[] = {
+ {
+ .start = 0x40f00180,
+ .end = 0x40f001a3,
+ .flags = IORESOURCE_MEM,
+ }, {
+ .start = IRQ_PWRI2C,
+ .end = IRQ_PWRI2C,
+ .flags = IORESOURCE_IRQ,
+ },
+};
+
+static struct platform_device pxai2c_power_device = {
+ .name = "pxa2xx-i2c",
+ .id = 1,
+ .resource = i2c_power_resources,
+ .num_resources = ARRAY_SIZE(i2c_power_resources),
+};
+
static struct platform_device *devices[] __initdata = {
- &ohci_device,
+ &pxamci_device,
+ &pxaudc_device,
+ &pxafb_device,
+ &ffuart_device,
+ &btuart_device,
+ &stuart_device,
+ &pxai2c_device,
+ &pxai2c_power_device,
+ &pxai2s_device,
+ &pxaficp_device,
+ &pxartc_device,
+ &pxaohci_device,
};
void __init pxa27x_init_irq(void)