[PATCH] acpi, spcr: Make SPCR available to x86

Ingo Molnar mingo at kernel.org
Sat Jan 20 06:33:51 PST 2018


* Prarit Bhargava <prarit at redhat.com> wrote:

> Note on testing:  I've tested this on several ARM64 and x86 boxes (only
> earlycon, console=ttyS0,115200, and with both options), verified that
> functionality on ARM64 has not changed (ie, CONFIG_ACPI_SPCR_TABLE is
> always =y), and verified functionality when !CONFIG_ACPI_SPCR_TABLE on
> x86.
> 
> P.
> 
> ----8<----
> 
> SPCR is currently only enabled or ARM64 and x86 can use SPCR to setup an
> early console.
> 
> General fixes include updating Documentation & Kconfig (for x86), updating
> comments, and changing parse_spcr() to acpi_parse_spcr(), and
> earlycon_init_is_deferred to earlycon_acpi_spcr_enable to be more
> descriptive.
> 
> On x86, many systems have a valid SPCR table but the table version is not
> 2 so the table version check must be a warning.
> 
> On ARM64 when the kernel parameter earlycon is used both the early console
> and console are enabled.  On x86, only the earlycon should be enabled by
> by default.  Modify acpi_parse_spcr() to allow options for initializing
> the early console and console separately.
> 
> Signed-off-by: Prarit Bhargava <prarit at redhat.com>
> Cc: linux-acpi at vger.kernel.org
> Cc: linux-doc at vger.kernel.org
> Cc: linux-arm-kernel at lists.infradead.org
> Cc: linux-pm at vger.kernel.org
> Cc: linux-serial at vger.kernel.org
> Cc: Bhupesh Sharma <bhsharma at redhat.com>
> Cc: Lv Zheng <lv.zheng at intel.com>
> Cc: Thomas Gleixner <tglx at linutronix.de>
> Cc: Ingo Molnar <mingo at redhat.com>
> Cc: "H. Peter Anvin" <hpa at zytor.com>
> Cc: x86 at kernel.org
> Cc: Jonathan Corbet <corbet at lwn.net>
> Cc: Catalin Marinas <catalin.marinas at arm.com>
> Cc: Will Deacon <will.deacon at arm.com>
> Cc: "Rafael J. Wysocki" Mrjw at rjwysocki.net>
> Cc: Timur Tabi <timur at codeaurora.org>
> Cc: graeme.gregory at linaro.org
> Cc: mark.salter at redhat.com
> ---
>  Documentation/admin-guide/kernel-parameters.txt |  9 +++++---
>  arch/arm64/kernel/acpi.c                        |  4 ++--
>  arch/x86/kernel/acpi/boot.c                     |  3 +++
>  drivers/acpi/Kconfig                            |  7 +++++-
>  drivers/acpi/spcr.c                             | 29 +++++++++++++------------
>  drivers/tty/serial/earlycon.c                   | 15 +++++--------
>  include/linux/acpi.h                            |  7 ++++--
>  include/linux/serial_core.h                     |  4 ++--
>  8 files changed, 44 insertions(+), 34 deletions(-)

I'm fine with the x86 aspect of this:

Acked-by: Ingo Molnar <mingo at kernel.org>

>  	earlycon=	[KNL] Output early console device and options.
>  
> -			When used with no options, the early console is
> -			determined by the stdout-path property in device
> -			tree's chosen node.
> +			[ARM64] The early console is determined by the
> +			stdout-path property in device tree's chosen node,
> +			or determined by the ACPI SPCR table.

s/in device tree's chosen node
 /in the device tree's chosen node

Thanks,

	Ingo



More information about the linux-arm-kernel mailing list