diff options
-rw-r--r-- | multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39-at91-atmel-serial-uart0-rx-timer.patch | 36 | ||||
-rw-r--r-- | multitech/recipes/linux/linux_2.6.39.4.bb | 1 |
2 files changed, 37 insertions, 0 deletions
diff --git a/multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39-at91-atmel-serial-uart0-rx-timer.patch b/multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39-at91-atmel-serial-uart0-rx-timer.patch new file mode 100644 index 0000000..e482c78 --- /dev/null +++ b/multitech/recipes/linux/linux-2.6.39.4/linux-2.6.39-at91-atmel-serial-uart0-rx-timer.patch @@ -0,0 +1,36 @@ +Index: linux-2.6.39.4/drivers/tty/serial/atmel_serial.c +=================================================================== +--- linux-2.6.39.4.orig/drivers/tty/serial/atmel_serial.c 2013-03-05 11:13:21.334104152 -0600 ++++ linux-2.6.39.4/drivers/tty/serial/atmel_serial.c 2013-03-05 11:13:42.299860530 -0600 +@@ -1510,7 +1510,14 @@ + UART_PUT_PTCR(port, ATMEL_PDC_RXTEN); + } else if (atmel_use_dma_rx(port)) { + /* set UART timeout */ ++#ifdef CONFIG_ARCH_AT91SAM9X5 ++ /* DBGU, UART0, UART1 don't support RX TIMEOUT */ ++ if (port->line == 0 || ++ port->mapbase == AT91SAM9X5_BASE_UART0 || ++ port->mapbase == AT91SAM9X5_BASE_UART1) { ++#else + if (port->line == 0) { ++#endif + setup_timer(&atmel_port->uart_timer, + atmel_uart_timer_callback, + (unsigned long)port); +@@ -1585,8 +1592,15 @@ + + if (atmel_use_dma_rx(port)) { + atmel_rx_dma_release(atmel_port); +- if (port->line == 0) ++#ifdef CONFIG_ARCH_AT91SAM9X5 ++ if (port->line == 0 || ++ port->mapbase == AT91SAM9X5_BASE_UART0 || ++ port->mapbase == AT91SAM9X5_BASE_UART1) { ++#else ++ if (port->line == 0) { ++#endif + del_timer_sync(&atmel_port->uart_timer); ++ } + } + if (atmel_use_dma_tx(port)) + atmel_tx_dma_release(atmel_port); diff --git a/multitech/recipes/linux/linux_2.6.39.4.bb b/multitech/recipes/linux/linux_2.6.39.4.bb index fa39c26..0bb15e2 100644 --- a/multitech/recipes/linux/linux_2.6.39.4.bb +++ b/multitech/recipes/linux/linux_2.6.39.4.bb @@ -134,6 +134,7 @@ AT91SAM9X5_PATCHES = " \ file://9x5_pmecc_2639/0007-atmel_nand-pass-the-pmecc-parameter-from-board-file-.patch \ file://9x5_pmecc_2639/0008-atmel_nand-9x5ek-enable-PMECC-in-9x5ek-board.patch \ file://9x5_pmecc_2639/0009-atmel_nand-enable-dma-for-9x5ek.patch \ + file://linux-2.6.39-at91-atmel-serial-uart0-rx-timer.patch \ " SRC_URI_append_mtocgd3 = " \ |