Re: [PATCH] serial: 8250: probe all 16550A variants by default

From: Andy Shevchenko
Date: Mon May 25 2020 - 09:40:31 EST

On Mon, May 25, 2020 at 04:02:38PM +0300, Vladimir Oltean wrote:
> From: Vladimir Oltean <vladimir.oltean@xxxxxxx>
> On NXP T1040, the UART is typically detected as 16550A_FSL64. After said
> patch, it gets detected as plain 16550A and the Linux console is
> completely garbled and missing characters.
> So clearly, introducing the SERIAL_8250_16550A_VARIANTS config option
> has broken many existing users because it has changed the default
> behavior. Restore that by adding a 'default y' to this option. Users who
> care about 20 ms shorter boot time can always disable it, but stop
> wasting many debugging hours for people who don't care all that much.

While this sounds like a good enough fix of the regression, the proper one
seems to have a separate quirk driver which avoids auto probe and uses
compatible strings or whatever that board can supply. 8250_port historically
has a burden of old and buggy hardware, that's why the above mentioned patch
exposed that.

That said, I have no objections, but had to note about possible approaches.

> Fixes: dc56ecb81a0a ("serial: 8250: Support disabling mdelay-filled probes of 16550A variants")
> Signed-off-by: Vladimir Oltean <vladimir.oltean@xxxxxxx>
> ---
> drivers/tty/serial/8250/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
> diff --git a/drivers/tty/serial/8250/Kconfig b/drivers/tty/serial/8250/Kconfig
> index af0688156dd0..89c7ecb55619 100644
> --- a/drivers/tty/serial/8250/Kconfig
> +++ b/drivers/tty/serial/8250/Kconfig
> @@ -63,6 +63,7 @@ config SERIAL_8250_PNP
> config SERIAL_8250_16550A_VARIANTS
> bool "Support for variants of the 16550A serial port"
> depends on SERIAL_8250
> + default y
> help
> The 8250 driver can probe for many variants of the venerable 16550A
> serial port. Doing so takes additional time at boot.
> --
> 2.25.1

With Best Regards,
Andy Shevchenko