aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-realview
diff options
context:
space:
mode:
authorBahadir Balban <bahadir.balban@arm.com>2008-04-18 17:43:14 -0400
committerCatalin Marinas <catalin.marinas@arm.com>2008-04-18 17:43:14 -0400
commit387847ee0fb258a50032db81e216be4ec1350586 (patch)
treea95d413419d004ee3b397197a67a30e449c80130 /arch/arm/mach-realview
parent78fdcb4287b5781d8175115430ca50e30899bf09 (diff)
RealView: Add compactflash support for the PB11MPCore platform
This patch adds the resource and device definitions for the compact flash. Signed-off-by: Bahadir Balban <bahadir.balban@arm.com> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm/mach-realview')
-rw-r--r--arch/arm/mach-realview/realview_pb11mp.c26
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 = {
237 .resource = realview_pb11mp_smsc911x_resources, 237 .resource = realview_pb11mp_smsc911x_resources,
238}; 238};
239 239
240struct resource realview_pb11mp_cf_resources[] = {
241 [0] = {
242 .start = REALVIEW_PB11MP_CF_BASE,
243 .end = REALVIEW_PB11MP_CF_BASE + SZ_4K - 1,
244 .flags = IORESOURCE_MEM,
245 },
246 [1] = {
247 .start = REALVIEW_PB11MP_CF_MEM_BASE,
248 .end = REALVIEW_PB11MP_CF_MEM_BASE + SZ_4K - 1,
249 .flags = IORESOURCE_MEM,
250 },
251 [2] = {
252 .start = -1, /* FIXME: Find correct irq */
253 .end = -1,
254 .flags = IORESOURCE_IRQ,
255 },
256};
257
258struct platform_device realview_pb11mp_cf_device = {
259 .name = "compactflash",
260 .id = 0,
261 .num_resources = ARRAY_SIZE(realview_pb11mp_cf_resources),
262 .resource = realview_pb11mp_cf_resources,
263};
264
240static void __init gic_init_irq(void) 265static void __init gic_init_irq(void)
241{ 266{
242 unsigned int pldctrl; 267 unsigned int pldctrl;
@@ -291,6 +316,7 @@ static void __init realview_pb11mp_init(void)
291 ARRAY_SIZE(realview_pb11mp_flash_resource)); 316 ARRAY_SIZE(realview_pb11mp_flash_resource));
292 platform_device_register(&realview_pb11mp_smsc911x_device); 317 platform_device_register(&realview_pb11mp_smsc911x_device);
293 platform_device_register(&realview_i2c_device); 318 platform_device_register(&realview_i2c_device);
319 platform_device_register(&realview_pb11mp_cf_device);
294 320
295 for (i = 0; i < ARRAY_SIZE(amba_devs); i++) { 321 for (i = 0; i < ARRAY_SIZE(amba_devs); i++) {
296 struct amba_device *d = amba_devs[i]; 322 struct amba_device *d = amba_devs[i];