[PULL v2][Xenial] Support QEMU guests in ACPI mode

dann frazier dann.frazier at canonical.com
Wed Feb 28 17:33:08 UTC 2018

BugLink: https://bugs.launchpad.net/bugs/1744754

qemu-efi, the package that provides UEFI firmware used to boot arm64
KVM guests, switched from exposing devicetree to ACPI by default after
the xenial release. This was inherited from upstream. However, the
GA xenial kernel didn't have enough ACPI support to boot in this
mode. That means, for example, that your bionic-based OpenStack won't
be able to boot xenial cloud images. This series backports the minimum
necessary ACPI support back to 4.4: GICv3 and SPCR console detection.

The testing/risk assessment is all there in the bug, as is a
discussion of other possible solutions. The GICv3 support comprises
all clean cherry-picks. Some backporting was required for the console
stuff - I've annotated each patch with the details in each patch above
my S-o-b.

Test builds are available in ppa:dannf/test

 - Update config annotations for CONFIG_ACPI_SPCR_TABLE (squashed into
   the commit that enables it).
 - Update cover letter to be clear that the change in qemu-efi
   happened after xenial.

The following changes since commit 355335ee775c4016a34b22e99e14cf5bc9534c1b:

  UBUNTU: [Packaging] update urgency to medium by default (2018-01-29 13:09:24 +0100)

are available in the Git repository at:

  git://git.launchpad.net/~dannf/ubuntu/+source/linux/+git/linux xenial-spcr-annotated

for you to fetch changes up to c3beab50e1cd3bc947773a41da36a4c2e15ff73d:

  serial: pl011: add console matching function (2018-02-28 10:17:16 -0700)

Aleksey Makarov (4):
      ACPICA: Headers: Add new constants for the DBG2 ACPI table
      ACPI: parse SPCR and enable matching console
      ARM64: ACPI: enable ACPI_SPCR_TABLE
      serial: pl011: add console matching function

Hanjun Guo (1):
      irqchip/gic-v3: Remove gic_root_node variable from the ITS code

Leif Lindholm (1):
      of/serial: move earlycon early_param handling to serial

Tomasz Nowicki (4):
      irqchip/gic-v3: Refactor gic_of_init() for GICv3 driver
      irqchip/gic-v3: Add ACPI support for GICv3/4 initialization
      irqchip/gic-v3: ACPI: Add redistributor support via GICC structures
      irqchip/gic-v3-its: Mark its_init() and its children as __init

dann frazier (1):

 arch/arm64/Kconfig                        |   1 +
 arch/arm64/kernel/acpi.c                  |  11 +-
 debian.master/config/annotations          |   2 +
 debian.master/config/config.common.ubuntu |   1 +
 drivers/acpi/Kconfig                      |   3 +
 drivers/acpi/Makefile                     |   1 +
 drivers/acpi/spcr.c                       | 111 ++++++++++
 drivers/irqchip/irq-gic-v3-its.c          |  10 +-
 drivers/irqchip/irq-gic-v3.c              | 347 +++++++++++++++++++++++++-----
 drivers/of/fdt.c                          |  11 +-
 drivers/tty/serial/amba-pl011.c           |  55 +++++
 drivers/tty/serial/earlycon.c             |  20 +-
 include/acpi/actbl2.h                     |   7 +-
 include/linux/acpi.h                      |   6 +
 include/linux/of_fdt.h                    |   3 +
 include/linux/serial_core.h               |   9 +-
 16 files changed, 529 insertions(+), 69 deletions(-)
 create mode 100644 drivers/acpi/spcr.c

More information about the kernel-team mailing list