diff options
Diffstat (limited to 'arch/arm/mach-realview/realview_pbx.c')
-rw-r--r-- | arch/arm/mach-realview/realview_pbx.c | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/arch/arm/mach-realview/realview_pbx.c b/arch/arm/mach-realview/realview_pbx.c index ede2a57240a3..ce6c5d25fbef 100644 --- a/arch/arm/mach-realview/realview_pbx.c +++ b/arch/arm/mach-realview/realview_pbx.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <linux/platform_device.h> | 22 | #include <linux/platform_device.h> |
23 | #include <linux/sysdev.h> | 23 | #include <linux/sysdev.h> |
24 | #include <linux/amba/bus.h> | 24 | #include <linux/amba/bus.h> |
25 | #include <linux/amba/pl061.h> | ||
25 | #include <linux/io.h> | 26 | #include <linux/io.h> |
26 | 27 | ||
27 | #include <asm/irq.h> | 28 | #include <asm/irq.h> |
@@ -118,6 +119,21 @@ static void __init realview_pbx_map_io(void) | |||
118 | iotable_init(realview_local_io_desc, ARRAY_SIZE(realview_local_io_desc)); | 119 | iotable_init(realview_local_io_desc, ARRAY_SIZE(realview_local_io_desc)); |
119 | } | 120 | } |
120 | 121 | ||
122 | static struct pl061_platform_data gpio0_plat_data = { | ||
123 | .gpio_base = 0, | ||
124 | .irq_base = -1, | ||
125 | }; | ||
126 | |||
127 | static struct pl061_platform_data gpio1_plat_data = { | ||
128 | .gpio_base = 8, | ||
129 | .irq_base = -1, | ||
130 | }; | ||
131 | |||
132 | static struct pl061_platform_data gpio2_plat_data = { | ||
133 | .gpio_base = 16, | ||
134 | .irq_base = -1, | ||
135 | }; | ||
136 | |||
121 | /* | 137 | /* |
122 | * RealView PBXCore AMBA devices | 138 | * RealView PBXCore AMBA devices |
123 | */ | 139 | */ |
@@ -176,9 +192,9 @@ AMBA_DEVICE(uart3, "fpga:09", PBX_UART3, NULL); | |||
176 | AMBA_DEVICE(smc, "dev:00", PBX_SMC, NULL); | 192 | AMBA_DEVICE(smc, "dev:00", PBX_SMC, NULL); |
177 | AMBA_DEVICE(sctl, "dev:e0", SCTL, NULL); | 193 | AMBA_DEVICE(sctl, "dev:e0", SCTL, NULL); |
178 | AMBA_DEVICE(wdog, "dev:e1", PBX_WATCHDOG, NULL); | 194 | AMBA_DEVICE(wdog, "dev:e1", PBX_WATCHDOG, NULL); |
179 | AMBA_DEVICE(gpio0, "dev:e4", PBX_GPIO0, NULL); | 195 | AMBA_DEVICE(gpio0, "dev:e4", PBX_GPIO0, &gpio0_plat_data); |
180 | AMBA_DEVICE(gpio1, "dev:e5", GPIO1, NULL); | 196 | AMBA_DEVICE(gpio1, "dev:e5", GPIO1, &gpio1_plat_data); |
181 | AMBA_DEVICE(gpio2, "dev:e6", GPIO2, NULL); | 197 | AMBA_DEVICE(gpio2, "dev:e6", GPIO2, &gpio2_plat_data); |
182 | AMBA_DEVICE(rtc, "dev:e8", PBX_RTC, NULL); | 198 | AMBA_DEVICE(rtc, "dev:e8", PBX_RTC, NULL); |
183 | AMBA_DEVICE(sci0, "dev:f0", SCI, NULL); | 199 | AMBA_DEVICE(sci0, "dev:f0", SCI, NULL); |
184 | AMBA_DEVICE(uart0, "dev:f1", PBX_UART0, NULL); | 200 | AMBA_DEVICE(uart0, "dev:f1", PBX_UART0, NULL); |