diff options
Diffstat (limited to 'arch/arm/mach-realview/realview_pb1176.c')
-rw-r--r-- | arch/arm/mach-realview/realview_pb1176.c | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/arch/arm/mach-realview/realview_pb1176.c b/arch/arm/mach-realview/realview_pb1176.c index 25efe71a67c7..17fbb0e889b6 100644 --- a/arch/arm/mach-realview/realview_pb1176.c +++ b/arch/arm/mach-realview/realview_pb1176.c | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/platform_device.h> | 23 | #include <linux/platform_device.h> |
24 | #include <linux/sysdev.h> | 24 | #include <linux/sysdev.h> |
25 | #include <linux/amba/bus.h> | 25 | #include <linux/amba/bus.h> |
26 | #include <linux/amba/pl061.h> | ||
26 | #include <linux/io.h> | 27 | #include <linux/io.h> |
27 | 28 | ||
28 | #include <mach/hardware.h> | 29 | #include <mach/hardware.h> |
@@ -107,6 +108,21 @@ static void __init realview_pb1176_map_io(void) | |||
107 | iotable_init(realview_pb1176_io_desc, ARRAY_SIZE(realview_pb1176_io_desc)); | 108 | iotable_init(realview_pb1176_io_desc, ARRAY_SIZE(realview_pb1176_io_desc)); |
108 | } | 109 | } |
109 | 110 | ||
111 | static struct pl061_platform_data gpio0_plat_data = { | ||
112 | .gpio_base = 0, | ||
113 | .irq_base = -1, | ||
114 | }; | ||
115 | |||
116 | static struct pl061_platform_data gpio1_plat_data = { | ||
117 | .gpio_base = 8, | ||
118 | .irq_base = -1, | ||
119 | }; | ||
120 | |||
121 | static struct pl061_platform_data gpio2_plat_data = { | ||
122 | .gpio_base = 16, | ||
123 | .irq_base = -1, | ||
124 | }; | ||
125 | |||
110 | /* | 126 | /* |
111 | * RealView PB1176 AMBA devices | 127 | * RealView PB1176 AMBA devices |
112 | */ | 128 | */ |
@@ -164,9 +180,9 @@ AMBA_DEVICE(uart3, "fpga:09", PB1176_UART3, NULL); | |||
164 | AMBA_DEVICE(smc, "dev:00", PB1176_SMC, NULL); | 180 | AMBA_DEVICE(smc, "dev:00", PB1176_SMC, NULL); |
165 | AMBA_DEVICE(sctl, "dev:e0", SCTL, NULL); | 181 | AMBA_DEVICE(sctl, "dev:e0", SCTL, NULL); |
166 | AMBA_DEVICE(wdog, "dev:e1", PB1176_WATCHDOG, NULL); | 182 | AMBA_DEVICE(wdog, "dev:e1", PB1176_WATCHDOG, NULL); |
167 | AMBA_DEVICE(gpio0, "dev:e4", PB1176_GPIO0, NULL); | 183 | AMBA_DEVICE(gpio0, "dev:e4", PB1176_GPIO0, &gpio0_plat_data); |
168 | AMBA_DEVICE(gpio1, "dev:e5", GPIO1, NULL); | 184 | AMBA_DEVICE(gpio1, "dev:e5", GPIO1, &gpio1_plat_data); |
169 | AMBA_DEVICE(gpio2, "dev:e6", GPIO2, NULL); | 185 | AMBA_DEVICE(gpio2, "dev:e6", GPIO2, &gpio2_plat_data); |
170 | AMBA_DEVICE(rtc, "dev:e8", PB1176_RTC, NULL); | 186 | AMBA_DEVICE(rtc, "dev:e8", PB1176_RTC, NULL); |
171 | AMBA_DEVICE(sci0, "dev:f0", SCI, NULL); | 187 | AMBA_DEVICE(sci0, "dev:f0", SCI, NULL); |
172 | AMBA_DEVICE(uart0, "dev:f1", PB1176_UART0, NULL); | 188 | AMBA_DEVICE(uart0, "dev:f1", PB1176_UART0, NULL); |