X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=target%2Flinux%2Far7%2Fpatches-2.6.22%2F500-serial_kludge.patch;h=c8f06a14406c3adbf9fc606f91202945d0544e82;hp=9292a4cefc602d1686e11169544e72a9c4e80d9c;hb=fcd58c8def8caeaa426a88d55b8a1b7818dfa77e;hpb=0ab7e16b627ac52c49e7bb16ae8ac7b11d3f42e9 diff --git a/target/linux/ar7/patches-2.6.22/500-serial_kludge.patch b/target/linux/ar7/patches-2.6.22/500-serial_kludge.patch index 9292a4cefc..c8f06a1440 100644 --- a/target/linux/ar7/patches-2.6.22/500-serial_kludge.patch +++ b/target/linux/ar7/patches-2.6.22/500-serial_kludge.patch @@ -15,12 +15,15 @@ diff -urN linux-2.6.22.orig/drivers/serial/8250.c linux-2.6.22/drivers/serial/82 }; #if defined (CONFIG_SERIAL_8250_AU1X00) -@@ -2436,7 +2443,7 @@ +@@ -2453,7 +2453,11 @@ { struct uart_8250_port *up = (struct uart_8250_port *)port; -- wait_for_xmitr(up, UART_LSR_THRE); ++#ifdef CONFIG_AR7 + wait_for_xmitr(up, BOTH_EMPTY); ++#else + wait_for_xmitr(up, UART_LSR_THRE); ++#endif serial_out(up, UART_TX, ch); } @@ -38,13 +41,14 @@ diff -urN linux-2.6.22.orig/include/linux/serial_core.h linux-2.6.22/include/lin diff -urN linux-2.6.22.orig/include/linux/serialP.h linux-2.6.22/include/linux/serialP.h --- linux-2.6.22.orig/include/linux/serialP.h 2007-07-09 01:32:17.000000000 +0200 +++ linux-2.6.22/include/linux/serialP.h 2007-07-11 03:08:57.000000000 +0200 -@@ -135,6 +135,9 @@ +@@ -135,6 +135,10 @@ * the interrupt line _up_ instead of down, so if we register the IRQ * while the UART is in that state, we die in an IRQ storm. */ #define ALPHA_KLUDGE_MCR (UART_MCR_OUT2) +#elif defined(CONFIG_AR7) +/* This is how it is set up by bootloader... */ -+#define ALPHA_KLUDGE_MCR (UART_MCR_OUT2 | UART_MCR_OUT1 | UART_MCR_RTS | UART_MCR_DTR) ++#define ALPHA_KLUDGE_MCR (UART_MCR_OUT2 | UART_MCR_OUT1 \ ++ | UART_MCR_RTS | UART_MCR_DTR) #else #define ALPHA_KLUDGE_MCR 0 #endif