On Tue, 26 Dec 2006 19:43:17 +0300 Vitaly Wool <[EMAIL PROTECTED]> wrote:
^^^^^^^^^^^ Sorry. > Hello Andrew, > > probing for UART_BUG_TXEN in 8250 driver leads to weird effects on some ARM > boards (pnx4008 for instance). That is, the driver detects UART_BUG_TXEN > (though it apparently shouldn't) and it leads to symbol loss in console on > input (i. e. you input 'a' and you get nothing, then you input 'b' and you > get 'a', then you input 'c' and get 'b' and so on). > > The patch below makes this very probing a configuration option turned on by > default. > > drivers/serial/8250.c | 5 ++++- > drivers/serial/Kconfig | 10 ++++++++++ > 2 files changed, 14 insertions(+), 1 deletion(-) > > Signed-off-by: Vitaly Wool <[EMAIL PROTECTED]> > > diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c > index 51f3c73..cf3eb31 100644 > --- a/drivers/serial/8250.c > +++ b/drivers/serial/8250.c > @@ -1645,6 +1645,7 @@ static int serial8250_startup(struct uar > > serial8250_set_mctrl(&up->port, up->port.mctrl); > > +#ifndef CONFIG_SERIAL_8250_DONT_TEST_BUG_TXEN > /* > * Do a quick test to see if we receive an > * interrupt when we enable the TX irq. > @@ -1660,7 +1661,9 @@ static int serial8250_startup(struct uar > pr_debug("ttyS%d - enabling bad tx status > workarounds\n", > port->line); > } > - } else { > + } else > +#endif > + { > up->bugs &= ~UART_BUG_TXEN; > } > > diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig > index 2978c09..7efcaf3 100644 > --- a/drivers/serial/Kconfig > +++ b/drivers/serial/Kconfig > @@ -223,6 +223,16 @@ config SERIAL_8250_DETECT_IRQ > > If unsure, say N. > > +config SERIAL_8250_DONT_TEST_BUG_TXEN > + bool "Don't probe for TXEN bug" > + depends on SERIAL_8250_EXTENDED > + help > + Say Y here if you don't want the kernel to probe for TXEN bug > + on your serial port and try to workaround it. It might lead to > + character loss on some boards, though this is quite a rare case. > + > + If unsure, say N. > + > config SERIAL_8250_RSA > bool "Support RSA serial ports" > depends on SERIAL_8250_EXTENDED I think this should be a module option/boot parameter, not a config-time option. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/