Message ID | 1345717983-18179-21-git-send-email-balbi@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
* Felipe Balbi <balbi@ti.com> [120823 03:38]: > From: Vikram Pandita <vikram.pandita@ti.com> > > Software flow control register bits were not defined correctly. > > Also clarify the IXON and IXOFF logic to reflect what userspace wants. > > Cc: stable@vger.kernel.org > Tested-by: Shubhrajyoti D <shubhrajyoti@ti.com> > Signed-off-by: Vikram Pandita <vikram.pandita@ti.com> > Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com> > Signed-off-by: Felipe Balbi <balbi@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
On Thu, Aug 23, 2012 at 01:33:00PM +0300, Felipe Balbi wrote: > From: Vikram Pandita <vikram.pandita@ti.com> > > Software flow control register bits were not defined correctly. > > Also clarify the IXON and IXOFF logic to reflect what userspace wants. > > Cc: stable@vger.kernel.org > Tested-by: Shubhrajyoti D <shubhrajyoti@ti.com> > Signed-off-by: Vikram Pandita <vikram.pandita@ti.com> > Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com> > Signed-off-by: Felipe Balbi <balbi@ti.com> > Acked-by: Tony Lindgren <tony@atomide.com> > --- If this is a stable patch, should it be pulled out and put also in for 3.6? thanks, greg k-h
On Wed, Sep 05, 2012 at 01:27:49PM -0700, Greg KH wrote: > On Thu, Aug 23, 2012 at 01:33:00PM +0300, Felipe Balbi wrote: > > From: Vikram Pandita <vikram.pandita@ti.com> > > > > Software flow control register bits were not defined correctly. > > > > Also clarify the IXON and IXOFF logic to reflect what userspace wants. > > > > Cc: stable@vger.kernel.org > > Tested-by: Shubhrajyoti D <shubhrajyoti@ti.com> > > Signed-off-by: Vikram Pandita <vikram.pandita@ti.com> > > Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com> > > Signed-off-by: Felipe Balbi <balbi@ti.com> > > Acked-by: Tony Lindgren <tony@atomide.com> > > --- > > If this is a stable patch, should it be pulled out and put also in for > 3.6? I'll leave that for Vikram to answer. Vikram, do you think this is something so extreme that we _must_ apply it now, or can it wait for the next merge window ? I mean, I think this bug has been in the driver for a long time, right ?
diff --git a/arch/arm/plat-omap/include/plat/omap-serial.h b/arch/arm/plat-omap/include/plat/omap-serial.h index 743ac80..12e6805 100644 --- a/arch/arm/plat-omap/include/plat/omap-serial.h +++ b/arch/arm/plat-omap/include/plat/omap-serial.h @@ -42,10 +42,10 @@ #define OMAP_UART_WER_MOD_WKUP 0X7F /* Enable XON/XOFF flow control on output */ -#define OMAP_UART_SW_TX 0x04 +#define OMAP_UART_SW_TX 0x8 /* Enable XON/XOFF flow control on input */ -#define OMAP_UART_SW_RX 0x04 +#define OMAP_UART_SW_RX 0x2 #define OMAP_UART_SYSC_RESET 0X07 #define OMAP_UART_TCR_TRIG 0X0F diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c index c3579c0..d49981d 100644 --- a/drivers/tty/serial/omap-serial.c +++ b/drivers/tty/serial/omap-serial.c @@ -606,19 +606,19 @@ serial_omap_configure_xonxoff /* * IXON Flag: - * Enable XON/XOFF flow control on output. - * Transmit XON1, XOFF1 + * Flow control for OMAP.TX + * OMAP.RX should listen for XON/XOFF */ if (termios->c_iflag & IXON) - up->efr |= OMAP_UART_SW_TX; + up->efr |= OMAP_UART_SW_RX; /* * IXOFF Flag: - * Enable XON/XOFF flow control on input. - * Receiver compares XON1, XOFF1. + * Flow control for OMAP.RX + * OMAP.TX should send XON/XOFF */ if (termios->c_iflag & IXOFF) - up->efr |= OMAP_UART_SW_RX; + up->efr |= OMAP_UART_SW_TX; serial_out(up, UART_EFR, up->efr | UART_EFR_ECB); serial_out(up, UART_LCR, UART_LCR_CONF_MODE_A);