backport r21457
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 31 Oct 2010 22:17:41 +0000 (22:17 +0000)
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 31 Oct 2010 22:17:41 +0000 (22:17 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@23747 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/ar7/patches-2.6.32/140-uart_port_ar7.patch [new file with mode: 0644]

diff --git a/target/linux/ar7/patches-2.6.32/140-uart_port_ar7.patch b/target/linux/ar7/patches-2.6.32/140-uart_port_ar7.patch
new file mode 100644 (file)
index 0000000..3353c21
--- /dev/null
@@ -0,0 +1,28 @@
+    AR7: use correct UART port type
+
+    PORT_AR7 has the correct TRIG flag (UART_FCR_R_TRIG_00) as well as UART_CAP_AFE
+    being set. This fixes kernel console on TNETD7300 revision 0x02 and has no side
+    effects on other revisions of the chip.
+
+    Signed-off-by: Florian Fainelli <florian@openwrt.org>
+
+--- a/arch/mips/ar7/platform.c
++++ b/arch/mips/ar7/platform.c
+@@ -509,7 +509,7 @@ static int __init ar7_register_devices(v
+       memset(uart_port, 0, sizeof(struct uart_port) * 2);
+-      uart_port[0].type = PORT_16550A;
++      uart_port[0].type = PORT_AR7;
+       uart_port[0].line = 0;
+       uart_port[0].irq = AR7_IRQ_UART0;
+       uart_port[0].uartclk = ar7_bus_freq() / 2;
+@@ -524,7 +524,7 @@ static int __init ar7_register_devices(v
+       /* Only TNETD73xx have a second serial port */
+       if (ar7_has_second_uart()) {
+-              uart_port[1].type = PORT_16550A;
++              uart_port[1].type = PORT_AR7;
+               uart_port[1].line = 1;
+               uart_port[1].irq = AR7_IRQ_UART1;
+               uart_port[1].uartclk = ar7_bus_freq() / 2;