aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/of_serial.c
diff options
context:
space:
mode:
authorJohn Crispin <blogic@openwrt.org>2014-10-16 15:48:21 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-11-06 17:57:18 -0500
commit9b8777e3473e31b2aabd669e5f34866d4a3afb6a (patch)
tree151015ce45bd2bc3284b1bcbebbedb462f7e690d /drivers/tty/serial/of_serial.c
parent7af0ea5dee68c18259b07b86835d2648156d47f4 (diff)
serial: of: add a PORT_RT2880 definition
The Ralink RT2880 SoC and its successors have an internal 8250 core. This core needs the same quirks applied as the AMD AU1xxx uart. In addition to these quirks, the ports memory region is only 0x100 unlike the AU1xxx which has a size of 0x1000. Signed-off-by: John Crispin <blogic@openwrt.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial/of_serial.c')
-rw-r--r--drivers/tty/serial/of_serial.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/tty/serial/of_serial.c b/drivers/tty/serial/of_serial.c
index 9c64ad2ac1a8..8749fb849803 100644
--- a/drivers/tty/serial/of_serial.c
+++ b/drivers/tty/serial/of_serial.c
@@ -130,8 +130,15 @@ static int of_platform_serial_setup(struct platform_device *ofdev,
130 130
131 port->dev = &ofdev->dev; 131 port->dev = &ofdev->dev;
132 132
133 if (type == PORT_TEGRA) 133 switch (type) {
134 case PORT_TEGRA:
134 port->handle_break = tegra_serial_handle_break; 135 port->handle_break = tegra_serial_handle_break;
136 break;
137
138 case PORT_RT2880:
139 port->iotype = UPIO_AU;
140 break;
141 }
135 142
136 return 0; 143 return 0;
137out: 144out:
@@ -317,6 +324,7 @@ static struct of_device_id of_platform_serial_table[] = {
317 { .compatible = "ns16850", .data = (void *)PORT_16850, }, 324 { .compatible = "ns16850", .data = (void *)PORT_16850, },
318 { .compatible = "nvidia,tegra20-uart", .data = (void *)PORT_TEGRA, }, 325 { .compatible = "nvidia,tegra20-uart", .data = (void *)PORT_TEGRA, },
319 { .compatible = "nxp,lpc3220-uart", .data = (void *)PORT_LPC3220, }, 326 { .compatible = "nxp,lpc3220-uart", .data = (void *)PORT_LPC3220, },
327 { .compatible = "ralink,rt2880-uart", .data = (void *)PORT_RT2880, },
320 { .compatible = "altr,16550-FIFO32", 328 { .compatible = "altr,16550-FIFO32",
321 .data = (void *)PORT_ALTR_16550_F32, }, 329 .data = (void *)PORT_ALTR_16550_F32, },
322 { .compatible = "altr,16550-FIFO64", 330 { .compatible = "altr,16550-FIFO64",