On 05/07/2015 06:25 PM, Maciej W. Rozycki wrote:
> On Thu, 7 May 2015, Peter Hurley wrote:
> 
>>>  How does this overload interact with multiple `console=' options being 
>>> present BTW, which one is considered the early console?  Or do we support 
>>> driving multiple early consoles in parallel just as we do with regular 
>>> consoles?
>>
>> Please familiarize yourself with the existing 'console=' and 'earlycon='
>> command line options documented in Documentation/kernel-parameters.txt
> 
>  Thank you for your suggestion, however that documentation does not answer 
> my questions I am afraid (and neither does serial-console.txt).  Otherwise
> I wouldn't have asked them in the first place.  If you don't know the 
> answers either, then it's OK to say: "I don't know".
> 
>  E.g. (given the parameter aliasing we have) will:
> 
> `earlycon=uart8250,io,0x3f8 console=tty0'
> `console=tty0 earlycon=uart8250,io,0x3f8'
> 
> do what I expect it to, that is open the UART at 0x3f8 as an early console 
> and then hand it over to the ttyS0 device as respectively a secondary and 
> the primary (/dev/console) regular console?

No.

>From Documentation/kernel-parameters.txt:

        earlycon=       [KNL] Output early console device and options.

                .....

                uart[8250],io,<addr>[,options]
                uart[8250],mmio,<addr>[,options]
                uart[8250],mmio32,<addr>[,options]
                        Start an early, polled-mode console on the 8250/16550
                        UART at the specified I/O port or MMIO address.
                        MMIO inter-register address stride is either 8-bit
                        (mmio) or 32-bit (mmio32).
                        The options are the same as for ttyS, above.

IOW, command line parameters of the form:

        earlycon=uart8250,...

does not perform earlycon-to-console handoff.

Also from Documentation/kernel-parameters.txt:

        console=        [KNL] Output console device and options.

                .....

                uart[8250],io,<addr>[,options]
                uart[8250],mmio,<addr>[,options]
                        Start an early, polled-mode console on the 8250/16550
                        UART at the specified I/O port or MMIO address,
                        switching to the matching ttyS device later.  The
                        options are the same as for ttyS, above.

IOW, command line parameters of the form:

        console=uart8250,...

performs earlycon-to-console handoff.

Furthermore, because of the way aliasing was implemented in 2007,
it has been possible since to start _any_ earlycon with command line
parameters of the form:

        console=<earlycon name>,....

However, only 8250 implemented the console handoff.

Regards,
Peter Hurley

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to