Subject: [PATCH 0/3] ACPI: parse the SPCR table

From: [email-masked] (Peter Hurley)
Date: Mon, 25 Jan 2016 08:11:58 -0800

On 01/25/2016 03:45 AM, Aleksey Makarov wrote:
> This patchset is based on the patchset by Leif Lindholm [1]
> 
> 'ARM Server Base Boot Requirements' [2] mention SPCR 
> (Serial Port Console Redirection Table) [3] as a mandatory
> ACPI table that specifies the configuration of serial console.
> 
> Licensing concerns have prevented implementing it in the past, but as of
> 10 August 2015, these tables have both been released also under 
> OWF 1.0 [4].

This license has a patent retaliation provision, which makes it
incompatible with GPLv2.

*If the license applies to this code*, then this patch set does not
meet the criteria for submission.

Regards,
Peter Hurley

> SPCR support is included in QEMU's ARM mach-virt since 2.4 release.
> 
> Parse the SPCR table and check if any registered console match
> the description.  If it does, enable that console.
> 
> To implement that, introduce a new member
> int (*acpi_match)(struct console *, struct acpi_table_spcr *);
> of struct console.  It allows drivers to check if they provide
> a matching console device.
> 
> Also add an implementation of this member function to the pl011 driver
> and fix a minor issue in kernel/printk/printk.c
> 
> [1] https://lkml.kernel.org/g/1441716217-23786-1-git-send-email-leif.lindholm at linaro.org
> [2] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.den0044a/index.html
> [3] https://msdn.microsoft.com/en-us/library/windows/hardware/dn639132(v=vs.85).aspx
> [4] http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0
> 
> Aleksey Makarov (3):
>   printk: make preferred_console local static bool
>   ACPI: parse SPCR and enable matching console
>   serial: pl011: add acpi_match for amba-pl011.c
> 
>  arch/arm64/Kconfig              |  1 +
>  drivers/acpi/Kconfig            |  3 ++
>  drivers/acpi/Makefile           |  1 +
>  drivers/acpi/spcr.c             | 85 +++++++++++++++++++++++++++++++++++++
>  drivers/tty/serial/amba-pl011.c | 14 ++++++
>  include/acpi/actbl2.h           |  4 ++
>  include/linux/console.h         | 12 ++++++
>  kernel/printk/printk.c          | 94 +++++++++++++++++++++++++++++++----------
>  8 files changed, 191 insertions(+), 23 deletions(-)
>  create mode 100644 drivers/acpi/spcr.c
>