[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v7 0/5] PCI devices passthrough on Arm
Hello All, This serie is a follow up on Rahul serie where we included various fixes required after review on the mailing list and a new patch to move some of the x86 ecam related code to the common vpci code. Most of the patches of the original serie have been merged and this serie includes only 2 of the original patches reworked and 3 new patches: Move some ECAM related functions from x86 to generic vpci implementation: - move vcpi mmcfg_{read/write} and vpci_access_allowed to common vpci.c. - use ecam instead of mmcfg in common code. Enable the existing x86 virtual PCI support for ARM: - Add VPCI trap handler for each of the PCI device added for config space access. - Register the trap handler in XEN for each of the host bridge PCI ECAM config space access. Modify libxl function to take the whole domain config as argument: - libxl__arch_domain_init_hw_description - libxl__prepare_dt Emulated PCI device tree node in libxl: - Create a virtual PCI device tree node in libxl to enable the guest OS to discover the virtual PCI during guest boot. The patch modifying xc_domain_ioport_permission has been removed from the serie. Bertrand Marquis (1): xen/vpci: Move ecam access functions to common code Michal Orzel (2): tools/libxl: Modify libxl__arch_domain_init_hw_description... tools/libxl_arm: Modify libxl__prepare_dtb... Rahul Singh (2): xen/arm: Enable the existing x86 virtual PCI support for ARM arm/libxl: Emulated PCI device tree node in libxl tools/libs/light/libxl_arch.h | 2 +- tools/libs/light/libxl_arm.c | 111 +++++++++++++++++++++++++++++++- tools/libs/light/libxl_create.c | 5 ++ tools/libs/light/libxl_dom.c | 2 +- tools/libs/light/libxl_x86.c | 2 +- xen/arch/arm/Makefile | 1 + xen/arch/arm/domain.c | 4 ++ xen/arch/arm/vpci.c | 77 ++++++++++++++++++++++ xen/arch/arm/vpci.h | 36 +++++++++++ xen/arch/x86/hvm/io.c | 46 ++----------- xen/drivers/passthrough/pci.c | 14 ++++ xen/drivers/vpci/header.c | 2 +- xen/drivers/vpci/vpci.c | 64 ++++++++++++++++++ xen/include/asm-arm/domain.h | 1 + xen/include/asm-x86/pci.h | 2 - xen/include/public/arch-arm.h | 17 +++++ xen/include/xen/pci.h | 2 + xen/include/xen/vpci.h | 12 ++++ 18 files changed, 350 insertions(+), 50 deletions(-) create mode 100644 xen/arch/arm/vpci.c create mode 100644 xen/arch/arm/vpci.h -- 2.25.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |