This series adds support for R-Car Gen4 PCI host controller.
To fully support the controller, the following changes were made:
- Generic mechanism to support PCI child buses is added.
- Private data for PCI host bridge and means to access it are added.
The series was tested as a part of the pci-passthrough patches[1] and
build-tested standalone with enabled HAS_PCI and HAS_VPCI.
[1] https://github.com/Deedone/xen/tree/pci_passthrough_wip
v2->v3:
* dropped patches related to ATU programming delay
* improved formatting
v1->v2:
* see individual patches
Oleksandr Andrushchenko (4):
xen/arm: allow PCI host bridge to have private data
xen/arm: make pci_host_common_probe return the bridge
xen/arm: add support for PCI child bus
xen/arm: add support for R-Car Gen4 PCI host controller
xen/arch/arm/include/asm/pci.h | 14 +-
xen/arch/arm/pci/Makefile | 2 +
xen/arch/arm/pci/ecam.c | 17 +-
xen/arch/arm/pci/pci-access.c | 37 ++-
xen/arch/arm/pci/pci-designware.c | 403 ++++++++++++++++++++++++++++
xen/arch/arm/pci/pci-designware.h | 102 +++++++
xen/arch/arm/pci/pci-host-common.c | 92 +++++--
xen/arch/arm/pci/pci-host-generic.c | 2 +-
xen/arch/arm/pci/pci-host-rcar4.c | 103 +++++++
xen/arch/arm/pci/pci-host-zynqmp.c | 2 +-
xen/arch/arm/vpci.c | 83 ++++--
11 files changed, 807 insertions(+), 50 deletions(-)
create mode 100644 xen/arch/arm/pci/pci-designware.c
create mode 100644 xen/arch/arm/pci/pci-designware.h
create mode 100644 xen/arch/arm/pci/pci-host-rcar4.c
--
2.34.1