aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-realview/realview_pb1176.c
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@stericsson.com>2010-07-14 18:58:38 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-07-15 06:17:10 -0400
commitd6ada8609b8548e528cd91a922338aff7c616820 (patch)
tree9417078de37bc8bf6117fcb5d69103b2b1d28b4a /arch/arm/mach-realview/realview_pb1176.c
parent48f1d5a3cef5782cbc7a32c29f1eda2342877c13 (diff)
ARM: 6227/1: PL022 SSP platform data for the RealViews
This adds platform data for the PL022 to the ARM RealView reference designs, adds the necessary clock definition and fixes a badly defined IRQ line on the PB1176. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-realview/realview_pb1176.c')
-rw-r--r--arch/arm/mach-realview/realview_pb1176.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/arm/mach-realview/realview_pb1176.c b/arch/arm/mach-realview/realview_pb1176.c
index 9f02350cff3b..1766debe741c 100644
--- a/arch/arm/mach-realview/realview_pb1176.c
+++ b/arch/arm/mach-realview/realview_pb1176.c
@@ -25,6 +25,7 @@
25#include <linux/amba/bus.h> 25#include <linux/amba/bus.h>
26#include <linux/amba/pl061.h> 26#include <linux/amba/pl061.h>
27#include <linux/amba/mmci.h> 27#include <linux/amba/mmci.h>
28#include <linux/amba/pl022.h>
28#include <linux/io.h> 29#include <linux/io.h>
29 30
30#include <mach/hardware.h> 31#include <mach/hardware.h>
@@ -123,6 +124,12 @@ static struct pl061_platform_data gpio2_plat_data = {
123 .irq_base = -1, 124 .irq_base = -1,
124}; 125};
125 126
127static struct pl022_ssp_controller ssp0_plat_data = {
128 .bus_id = 0,
129 .enable_dma = 0,
130 .num_chipselect = 1,
131};
132
126/* 133/*
127 * RealView PB1176 AMBA devices 134 * RealView PB1176 AMBA devices
128 */ 135 */
@@ -166,7 +173,7 @@ static struct pl061_platform_data gpio2_plat_data = {
166#define PB1176_UART3_DMA { 0x86, 0x87 } 173#define PB1176_UART3_DMA { 0x86, 0x87 }
167#define PB1176_UART4_IRQ { IRQ_PB1176_UART4, NO_IRQ } 174#define PB1176_UART4_IRQ { IRQ_PB1176_UART4, NO_IRQ }
168#define PB1176_UART4_DMA { 0, 0 } 175#define PB1176_UART4_DMA { 0, 0 }
169#define PB1176_SSP_IRQ { IRQ_PB1176_SSP, NO_IRQ } 176#define PB1176_SSP_IRQ { IRQ_DC1176_SSP, NO_IRQ }
170#define PB1176_SSP_DMA { 9, 8 } 177#define PB1176_SSP_DMA { 9, 8 }
171 178
172/* FPGA Primecells */ 179/* FPGA Primecells */
@@ -189,7 +196,7 @@ AMBA_DEVICE(uart0, "dev:uart0", PB1176_UART0, NULL);
189AMBA_DEVICE(uart1, "dev:uart1", PB1176_UART1, NULL); 196AMBA_DEVICE(uart1, "dev:uart1", PB1176_UART1, NULL);
190AMBA_DEVICE(uart2, "dev:uart2", PB1176_UART2, NULL); 197AMBA_DEVICE(uart2, "dev:uart2", PB1176_UART2, NULL);
191AMBA_DEVICE(uart3, "dev:uart3", PB1176_UART3, NULL); 198AMBA_DEVICE(uart3, "dev:uart3", PB1176_UART3, NULL);
192AMBA_DEVICE(ssp0, "dev:ssp0", PB1176_SSP, NULL); 199AMBA_DEVICE(ssp0, "dev:ssp0", PB1176_SSP, &ssp0_plat_data);
193AMBA_DEVICE(clcd, "dev:clcd", PB1176_CLCD, &clcd_plat_data); 200AMBA_DEVICE(clcd, "dev:clcd", PB1176_CLCD, &clcd_plat_data);
194 201
195static struct amba_device *amba_devs[] __initdata = { 202static struct amba_device *amba_devs[] __initdata = {