[PULL][SRU Xenial] Fix booting arm64 guests in OpenStack bionic-rocky

dann frazier dann.frazier at canonical.com
Thu Nov 1 23:30:58 UTC 2018


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

Please refer to the bug for an explanation of the problem and how this
solves it. Most patches are clean cherry-picks, but 3 of them required
some minor backporting, as noted in the sign-off section
comments. This series does touch generic code - I've included a
patch-by-patch regression analysis of that in the [Regression Risk]
section of the bug template.

I regression tested on the 2 arm64 servers that I know were supported
by the 4.4 kernel. I also regression tested on armhf, but only in
QEMU, as I'm unaware of any actual ARMv7 hardware supported by the
generic kernel with PCI.

The following changes since commit 001d68ae41c16fb4e9e27ed05a42fe15c8e1862d:

  UBUNTU: Ubuntu-4.4.0-138.164 (2018-10-02 14:39:37 +0000)

are available in the Git repository at:

  git://git.launchpad.net/~dannf/ubuntu/+source/linux/+git/linux xenial-arm64-acpi-pci

for you to fetch changes up to 6ea689f10635098db409b1f1af9d08df9d9743e1:

  ARM64: PCI: Support ACPI-based PCI host controller (2018-10-29 12:03:40 -0600)

----------------------------------------------------------------
Jayachandran C (5):
      PCI: Provide common functions for ECAM mapping
      PCI: generic, thunder: Use generic ECAM API
      PCI: Move ecam.h to linux/include/pci-ecam.h
      PCI: Add parent device field to ECAM struct pci_config_window
      PCI/ACPI: Support I/O resources when parsing host bridge resources

Sinan Kaya (1):
      PCI: Add pci_unmap_iospace() to unmap I/O resources

Tomasz Nowicki (7):
      PCI, of: Move PCI I/O space management to PCI core code
      PCI/ACPI: Add generic MCFG table handling
      PCI: Refactor pci_bus_assign_domain_nr() for CONFIG_PCI_DOMAINS_GENERIC
      PCI: Factor DT-specific pci_bus_find_domain_nr() code out
      ARM64: PCI: Add acpi_pci_bus_find_domain_nr()
      ARM64: PCI: ACPI support for legacy IRQs parsing and consolidation with DT code
      ARM64: PCI: Support ACPI-based PCI host controller

dann frazier (2):
      UBUNTU: [Config] CONFIG_PCI_ECAM=y
      UBUNTU: [Config] CONFIG_ACPI_MCFG=y

 arch/arm64/Kconfig                        |   2 +
 arch/arm64/kernel/pci.c                   | 134 ++++++++++++++++++++++--
 debian.master/config/config.common.ubuntu |   2 +
 drivers/acpi/Kconfig                      |   3 +
 drivers/acpi/Makefile                     |   1 +
 drivers/acpi/pci_mcfg.c                   |  92 +++++++++++++++++
 drivers/acpi/pci_root.c                   |  35 +++++++
 drivers/of/address.c                      | 116 +--------------------
 drivers/pci/Kconfig                       |   3 +
 drivers/pci/Makefile                      |   2 +
 drivers/pci/ecam.c                        | 164 ++++++++++++++++++++++++++++++
 drivers/pci/host/Kconfig                  |   1 +
 drivers/pci/host/pci-host-common.c        | 115 +++++++++------------
 drivers/pci/host/pci-host-common.h        |  56 ----------
 drivers/pci/host/pci-host-generic.c       |  53 ++--------
 drivers/pci/host/pci-thunder-ecam.c       |  40 ++------
 drivers/pci/host/pci-thunder-pem.c        |  94 ++++++++---------
 drivers/pci/pci.c                         | 144 +++++++++++++++++++++++++-
 drivers/pci/probe.c                       |   4 +-
 include/linux/of_address.h                |   9 --
 include/linux/pci-acpi.h                  |   2 +
 include/linux/pci-ecam.h                  |  67 ++++++++++++
 include/linux/pci.h                       |  19 ++--
 23 files changed, 769 insertions(+), 389 deletions(-)
 create mode 100644 drivers/acpi/pci_mcfg.c
 create mode 100644 drivers/pci/ecam.c
 delete mode 100644 drivers/pci/host/pci-host-common.h
 create mode 100644 include/linux/pci-ecam.h




More information about the kernel-team mailing list