mbox series

[0/2] PCI: hv: Hyper-V vPCI for ARM64

Message ID MW4PR21MB20022E3A433CFA1558C71485C0D99@MW4PR21MB2002.namprd21.prod.outlook.com
Headers show
Series PCI: hv: Hyper-V vPCI for ARM64 | expand

Message

Sunil Muthuswamy Sept. 13, 2021, 5:35 p.m. UTC
Current Hyper-V vPCI code only compiles and works for x64. There are
some hardcoded assumptions about the architectural IRQ chip and other
arch defines.

This patch series adds support for Hyper-V vPCI for ARM64 by first
breaking the current hard coded dependency in the vPCI code and
making it arch neutral. That is in the first patch. The second
patch introduces a Hyper-V vPCI MSI IRQ chip for allocating SPI
vectors.

This patch depends on two other independent patch sets. First one
is the patch series from Michael Kelley titled:
"Enable Linux guests on Hyper-V on ARM64"
and the second one is from Boqun Feng titled:
"PCI: hv: Support host bridge probing on ARM64". Neither of these
patches are merged into one branch at the moment. I think its best
to carry this patch with the 'hyperv-next' tree after merging Boqun's
patch series.

Sunil Muthuswamy (2):
  PCI: hv: Make the code arch neutral
  PCI: hv: Support for Hyper-V vPCI for ARM64

 arch/arm64/hyperv/Makefile           |   2 +-
 arch/arm64/hyperv/hv_pci.c           | 275 +++++++++++++++++++++++++++
 arch/arm64/include/asm/hyperv-tlfs.h |   9 +
 arch/arm64/include/asm/mshyperv.h    |  26 +++
 arch/x86/include/asm/hyperv-tlfs.h   |  33 ++++
 arch/x86/include/asm/mshyperv.h      |  25 +++
 drivers/pci/Kconfig                  |   2 +-
 drivers/pci/controller/Kconfig       |   2 +-
 drivers/pci/controller/pci-hyperv.c  |  49 +++--
 include/asm-generic/hyperv-tlfs.h    |  33 ----
 10 files changed, 405 insertions(+), 51 deletions(-)
 create mode 100644 arch/arm64/hyperv/hv_pci.c