[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_JsqKCJvYSrFSBVCfijLhZEojm29JCY8ubQV1eAoyCCZDRZA@mail.gmail.com>
Date: Tue, 29 Apr 2014 15:41:45 -0500
From: Rob Herring <robherring2@...il.com>
To: Yinghai Lu <yinghai@...nel.org>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
"linux-serial@...r.kernel.org" <linux-serial@...r.kernel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jiri Slaby <jslaby@...e.cz>,
Catalin Marinas <catalin.marinas@....com>,
Russell King <linux@....linux.org.uk>,
Will Deacon <will.deacon@....com>,
Arnd Bergmann <arnd@...db.de>
Subject: Re: [PATCH v2 3/7] tty/serial: convert 8250 to generic earlycon
On Tue, Apr 29, 2014 at 1:22 PM, Yinghai Lu <yinghai@...nel.org> wrote:
> On Tue, Apr 29, 2014 at 8:16 AM, Rob Herring <robherring2@...il.com> wrote:
>> On Mon, Apr 28, 2014 at 9:56 PM, Yinghai Lu <yinghai@...nel.org> wrote:
>>> On Mon, Apr 28, 2014 at 4:24 PM, Rob Herring <robherring2@...il.com> wrote:
>>>> On Sat, Apr 26, 2014 at 1:29 AM, Yinghai Lu <yinghai@...nel.org> wrote:
>>>>
>>>> Thanks for finding these. I missed them in my build tests. This should fix them:
>>>>
>>>> diff --git a/drivers/tty/serial/8250/8250_early.c
>>>> b/drivers/tty/serial/8250/8250_early.c
>>>> index e83c9db..2094c3b 100644
>>>> --- a/drivers/tty/serial/8250/8250_early.c
>>>> +++ b/drivers/tty/serial/8250/8250_early.c
>>>> @@ -156,6 +156,11 @@ static int __init early_serial8250_setup(struct
>>>> earlycon_device *device,
>>>> EARLYCON_DECLARE(uart8250, early_serial8250_setup);
>>>> EARLYCON_DECLARE(uart, early_serial8250_setup);
>>>>
>>>> +int __init setup_early_serial8250_console(char *cmdline)
>>>> +{
>>>> + return setup_earlycon(cmdline, "uart8250", early_serial8250_setup);
>>>> +}
>>>> +
>>>> int serial8250_find_port_for_earlycon(void)
>>>> {
>>>> struct earlycon_device *device = early_device;
>>>
>>> that only handle "uart8250,", may need to add more lines to handle "uart,"
>>
>>
>> That is on purpose because the only 2 users use uart8250. I consider
>> this a legacy interface and use of "uart" is horrible because there
>> are lots of uarts which are not 8250.
>>
>> Rob
>>
>>>
>>> +int __init setup_early_serial8250_console(char *cmdline)
>>> +{
>>> + char *options;
>>> + options = strstr(cmdline, "uart8250,");
>>> + if (options)
>>> + return setup_earlycon(cmdline, "uart8250",
>>> early_serial8250_setup);
>>> +
>>> + options = strstr(cmdline, "uart,");
>>> + if (options)
>>> + return setup_earlycon(cmdline, "uart", early_serial8250_setup);
>>> +
>>> + return 0;
>>> +}
>
> You want to obsolete "console=uart,io,0x3f8,115200n8" ?
>
> Let's check with Andrew. He suggested to use uart and uart8250 at that time.
No, that is not what I'm saying. For the 2 callers of
setup_early_serial8250_console which are crafting a console string
from firmware data, they can and do use uart8250. I don't expect this
mechanism for setting up early console to expand to other users. The
whole point of this series is to allow any uart to be supported for
earlycon. For anyone using the kernel command line, both uart and
uart8250 are still supported.
Rob
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists