diff options
Diffstat (limited to 'arch/arm/mach-realview/realview_pb11mp.c')
-rw-r--r-- | arch/arm/mach-realview/realview_pb11mp.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/arch/arm/mach-realview/realview_pb11mp.c b/arch/arm/mach-realview/realview_pb11mp.c index f7b6bec20e86..7d1fa1fad5e4 100644 --- a/arch/arm/mach-realview/realview_pb11mp.c +++ b/arch/arm/mach-realview/realview_pb11mp.c @@ -237,6 +237,31 @@ static struct platform_device realview_pb11mp_smsc911x_device = { .resource = realview_pb11mp_smsc911x_resources, }; +struct resource realview_pb11mp_cf_resources[] = { + [0] = { + .start = REALVIEW_PB11MP_CF_BASE, + .end = REALVIEW_PB11MP_CF_BASE + SZ_4K - 1, + .flags = IORESOURCE_MEM, + }, + [1] = { + .start = REALVIEW_PB11MP_CF_MEM_BASE, + .end = REALVIEW_PB11MP_CF_MEM_BASE + SZ_4K - 1, + .flags = IORESOURCE_MEM, + }, + [2] = { + .start = -1, /* FIXME: Find correct irq */ + .end = -1, + .flags = IORESOURCE_IRQ, + }, +}; + +struct platform_device realview_pb11mp_cf_device = { + .name = "compactflash", + .id = 0, + .num_resources = ARRAY_SIZE(realview_pb11mp_cf_resources), + .resource = realview_pb11mp_cf_resources, +}; + static void __init gic_init_irq(void) { unsigned int pldctrl; @@ -291,6 +316,7 @@ static void __init realview_pb11mp_init(void) ARRAY_SIZE(realview_pb11mp_flash_resource)); platform_device_register(&realview_pb11mp_smsc911x_device); platform_device_register(&realview_i2c_device); + platform_device_register(&realview_pb11mp_cf_device); for (i = 0; i < ARRAY_SIZE(amba_devs); i++) { struct amba_device *d = amba_devs[i]; |