diff options
author | Magnus Damm <damm@igel.co.jp> | 2008-12-04 04:00:11 -0500 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2008-12-22 04:43:51 -0500 |
commit | 6aacba72dbdadc1445244e366ecf0263a160409e (patch) | |
tree | 4a47e49f2f392b09d64384d2642d41c134c7d8cb /arch/sh/boards | |
parent | 5727003b5d23eb852c057d25459bba27cbf754c3 (diff) |
sh: add st16c2550 devices to se7343
Add 8250 platform data to setup the ST16C2550C chip on se7343.
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/boards')
-rw-r--r-- | arch/sh/boards/mach-se/7343/setup.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/sh/boards/mach-se/7343/setup.c b/arch/sh/boards/mach-se/7343/setup.c index 9308660cff59..69dac91c2a6a 100644 --- a/arch/sh/boards/mach-se/7343/setup.c +++ b/arch/sh/boards/mach-se/7343/setup.c | |||
@@ -1,6 +1,8 @@ | |||
1 | #include <linux/init.h> | 1 | #include <linux/init.h> |
2 | #include <linux/platform_device.h> | 2 | #include <linux/platform_device.h> |
3 | #include <linux/mtd/physmap.h> | 3 | #include <linux/mtd/physmap.h> |
4 | #include <linux/serial_8250.h> | ||
5 | #include <linux/serial_reg.h> | ||
4 | #include <asm/machvec.h> | 6 | #include <asm/machvec.h> |
5 | #include <mach-se/mach/se7343.h> | 7 | #include <mach-se/mach/se7343.h> |
6 | #include <asm/heartbeat.h> | 8 | #include <asm/heartbeat.h> |
@@ -94,10 +96,41 @@ static struct platform_device nor_flash_device = { | |||
94 | .resource = nor_flash_resources, | 96 | .resource = nor_flash_resources, |
95 | }; | 97 | }; |
96 | 98 | ||
99 | #define ST16C2550C_FLAGS (UPF_BOOT_AUTOCONF | UPF_IOREMAP) | ||
100 | |||
101 | static struct plat_serial8250_port serial_platform_data[] = { | ||
102 | [0] = { | ||
103 | .iotype = UPIO_MEM, | ||
104 | .mapbase = 0x16000000, | ||
105 | .regshift = 1, | ||
106 | .flags = ST16C2550C_FLAGS, | ||
107 | .irq = UARTA_IRQ, | ||
108 | .uartclk = 7372800, | ||
109 | }, | ||
110 | [1] = { | ||
111 | .iotype = UPIO_MEM, | ||
112 | .mapbase = 0x17000000, | ||
113 | .regshift = 1, | ||
114 | .flags = ST16C2550C_FLAGS, | ||
115 | .irq = UARTB_IRQ, | ||
116 | .uartclk = 7372800, | ||
117 | }, | ||
118 | { }, | ||
119 | }; | ||
120 | |||
121 | static struct platform_device uart_device = { | ||
122 | .name = "serial8250", | ||
123 | .id = PLAT8250_DEV_PLATFORM, | ||
124 | .dev = { | ||
125 | .platform_data = serial_platform_data, | ||
126 | }, | ||
127 | }; | ||
128 | |||
97 | static struct platform_device *sh7343se_platform_devices[] __initdata = { | 129 | static struct platform_device *sh7343se_platform_devices[] __initdata = { |
98 | &smc91x_device, | 130 | &smc91x_device, |
99 | &heartbeat_device, | 131 | &heartbeat_device, |
100 | &nor_flash_device, | 132 | &nor_flash_device, |
133 | &uart_device, | ||
101 | }; | 134 | }; |
102 | 135 | ||
103 | static int __init sh7343se_devices_setup(void) | 136 | static int __init sh7343se_devices_setup(void) |