From 31acd6418f4b6d4018d74f94ad7c7fb43170d6f4 Mon Sep 17 00:00:00 2001 From: Jesse Gilles Date: Wed, 5 Jan 2011 12:04:38 -0600 Subject: linux-2.6.32: fix hardware flow control in atmel_serial * Fixes RTS/CTS flow control by reverting the following commit from linux-2.6: commit 8e706c4d0dab214c625a2df84a0ca69a76bae65d avr32: add hardware handshake support to atmel_serial --- .../linux-2.6.32.3-atmel_serial_disable_hwhs.patch | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 recipes/linux/linux-2.6.32/mtcdp/linux-2.6.32.3-atmel_serial_disable_hwhs.patch (limited to 'recipes/linux/linux-2.6.32/mtcdp/linux-2.6.32.3-atmel_serial_disable_hwhs.patch') diff --git a/recipes/linux/linux-2.6.32/mtcdp/linux-2.6.32.3-atmel_serial_disable_hwhs.patch b/recipes/linux/linux-2.6.32/mtcdp/linux-2.6.32.3-atmel_serial_disable_hwhs.patch new file mode 100644 index 0000000000..bd620afb95 --- /dev/null +++ b/recipes/linux/linux-2.6.32/mtcdp/linux-2.6.32.3-atmel_serial_disable_hwhs.patch @@ -0,0 +1,32 @@ +Revert commit 8e706c4d0dab214c625a2df84a0ca69a76bae65d in linux-2.6: + avr32: add hardware handshake support to atmel_serial + +Reverting commit since it breaks hardware flow control for at91sam9g20 + +diff --git a/drivers/serial/atmel_serial.c b/drivers/serial/atmel_serial.c +index 9d948bc..b659f2c 100644 +--- a/drivers/serial/atmel_serial.c ++++ b/drivers/serial/atmel_serial.c +@@ -1020,8 +1020,7 @@ static void atmel_set_termios(struct uart_port *port, struct ktermios *termios, + + /* Get current mode register */ + mode = UART_GET_MR(port) & ~(ATMEL_US_USCLKS | ATMEL_US_CHRL +- | ATMEL_US_NBSTOP | ATMEL_US_PAR +- | ATMEL_US_USMODE); ++ | ATMEL_US_NBSTOP | ATMEL_US_PAR); + + baud = uart_get_baud_rate(port, termios, old, 0, port->uartclk / 16); + quot = uart_get_divisor(port, baud); +@@ -1066,12 +1065,6 @@ static void atmel_set_termios(struct uart_port *port, struct ktermios *termios, + } else + mode |= ATMEL_US_PAR_NONE; + +- /* hardware handshake (RTS/CTS) */ +- if (termios->c_cflag & CRTSCTS) +- mode |= ATMEL_US_USMODE_HWHS; +- else +- mode |= ATMEL_US_USMODE_NORMAL; +- + spin_lock_irqsave(&port->lock, flags); + + port->read_status_mask = ATMEL_US_OVRE; -- cgit v1.2.3