Re: [PATCH v2] ACPI: SPCR: Consider baud rate 0 as preconfigured state

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 11/21/2018 08:43 AM, Andy Shevchenko wrote:
> Since SPCR 1.04 [1] the baud rate of 0 means a preconfigured state of UART.
> Assume firmware or bootloader configures console correctly.
> 
> [1]: https://docs.microsoft.com/en-us/windows-hardware/drivers/serports/serial-port-console-redirection-table
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> ---
> - assign baud rate to 0 when its encoded value is 0
> - don't put baud rate to console options if it's 0
> 
>  drivers/acpi/spcr.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/drivers/acpi/spcr.c b/drivers/acpi/spcr.c
> index 9d52743080a4..c336784d0bcb 100644
> --- a/drivers/acpi/spcr.c
> +++ b/drivers/acpi/spcr.c
> @@ -148,6 +148,13 @@ int __init acpi_parse_spcr(bool enable_earlycon, bool enable_console)
>  	}
>  
>  	switch (table->baud_rate) {
> +	case 0:
> +		/*
> +		 * SPCR 1.04 defines 0 as a preconfigured state of UART.
> +		 * Assume firmware or bootloader configures console correctly.
> +		 */
> +		baud_rate = 0;
> +		break;
>  	case 3:
>  		baud_rate = 9600;
>  		break;
> @@ -196,6 +203,10 @@ int __init acpi_parse_spcr(bool enable_earlycon, bool enable_console)
>  		 * UART so don't attempt to change to the baud rate state
>  		 * in the table because driver cannot calculate the dividers
>  		 */
> +		baud_rate = 0;
> +	}
> +
> +	if (!baud_rate) {
>  		snprintf(opts, sizeof(opts), "%s,%s,0x%llx", uart, iotype,
>  			 table->serial_port.address);
>  	} else {
> 

OOC what happens if you pass in opts="uart,io,0x3f8,0" to setup_earlycon() and
add_preferred_console() ?

P.



[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux