Message ID | 20180102092809.1841-1-manish.jaggi@linaro.org |
---|---|
Headers | show |
Series | acpi: arm: IORT Support for Xen | expand |
Hi Manish, On 02/01/18 09:27, manish.jaggi@linaro.org wrote: > From: Manish Jaggi <manish.jaggi@linaro.org> > > This patch aims to add the support of IORT in Xen. Below is the list > of major components which this patchset provides. > a. Add support for parsing the IORT > b. Provides API to populate/query requesterid - streamID mappings and > reuqesterid - deviceid mappings > c. The requesterid - deviceid mappings is used to create the IORT for > hardware domain (which hides smmu nodes from IORT) > d. iort.c fwnode.h fwspec code is imported from linux and modified. > e. Few kernel helper routines are also imported from linux. A link to the design document or a copy would have been helpful here. Cheers, > > This patchset compiles with [1] [RFC v4 0/8] SMMUv3 driver. > > [1] https://lists.xen.org/archives/html/xen-devel/2017-12/msg01294.html > > Manish Jaggi (11): > acpi: arm: Public API for populating and query based on requesterid > acpi: arm: API to query estimated size of hardware domain's IORT > acpi: arm: Code to generate Hardware Domains IORT > acpi: arm: Import iort.c and acpi_iort.h > acpi: arm: Import fwnode.h from linux > acpi: arm: fwnode xen spacific changes > Add kernel helper functions > Add ACPI_IORT config > acpi: arm: Xen IORT Changes > acpi: arm: IORT parsing functions to prepare requesterId maps > Add to_pci_dev macro > > xen/arch/arm/Kconfig | 5 + > xen/arch/arm/domain_build.c | 40 ++- > xen/arch/arm/setup.c | 2 + > xen/drivers/acpi/Kconfig | 3 + > xen/drivers/acpi/Makefile | 1 + > xen/drivers/acpi/arm/Makefile | 3 + > xen/drivers/acpi/arm/gen-iort.c | 352 +++++++++++++++++++++++++ > xen/drivers/acpi/arm/iort.c | 569 ++++++++++++++++++++++++++++++++++++++++ > xen/drivers/acpi/arm/ridmap.c | 124 +++++++++ > xen/drivers/passthrough/iommu.c | 75 ++++++ > xen/include/acpi/acpi_iort.h | 57 ++++ > xen/include/acpi/gen-iort.h | 7 + > xen/include/acpi/ridmap.h | 77 ++++++ > xen/include/asm-arm/acpi.h | 1 + > xen/include/asm-arm/device.h | 11 +- > xen/include/xen/fwnode.h | 125 +++++++++ > xen/include/xen/iommu.h | 22 ++ > xen/include/xen/kernel.h | 10 + > xen/include/xen/pci.h | 3 + > 19 files changed, 1484 insertions(+), 3 deletions(-) > create mode 100644 xen/drivers/acpi/arm/Makefile > create mode 100644 xen/drivers/acpi/arm/gen-iort.c > create mode 100644 xen/drivers/acpi/arm/iort.c > create mode 100644 xen/drivers/acpi/arm/ridmap.c > create mode 100644 xen/include/acpi/acpi_iort.h > create mode 100644 xen/include/acpi/gen-iort.h > create mode 100644 xen/include/acpi/ridmap.h > create mode 100644 xen/include/xen/fwnode.h >
From: Manish Jaggi <manish.jaggi@linaro.org> This patch aims to add the support of IORT in Xen. Below is the list of major components which this patchset provides. a. Add support for parsing the IORT b. Provides API to populate/query requesterid - streamID mappings and reuqesterid - deviceid mappings c. The requesterid - deviceid mappings is used to create the IORT for hardware domain (which hides smmu nodes from IORT) d. iort.c fwnode.h fwspec code is imported from linux and modified. e. Few kernel helper routines are also imported from linux. This patchset compiles with [1] [RFC v4 0/8] SMMUv3 driver. [1] https://lists.xen.org/archives/html/xen-devel/2017-12/msg01294.html Manish Jaggi (11): acpi: arm: Public API for populating and query based on requesterid acpi: arm: API to query estimated size of hardware domain's IORT acpi: arm: Code to generate Hardware Domains IORT acpi: arm: Import iort.c and acpi_iort.h acpi: arm: Import fwnode.h from linux acpi: arm: fwnode xen spacific changes Add kernel helper functions Add ACPI_IORT config acpi: arm: Xen IORT Changes acpi: arm: IORT parsing functions to prepare requesterId maps Add to_pci_dev macro xen/arch/arm/Kconfig | 5 + xen/arch/arm/domain_build.c | 40 ++- xen/arch/arm/setup.c | 2 + xen/drivers/acpi/Kconfig | 3 + xen/drivers/acpi/Makefile | 1 + xen/drivers/acpi/arm/Makefile | 3 + xen/drivers/acpi/arm/gen-iort.c | 352 +++++++++++++++++++++++++ xen/drivers/acpi/arm/iort.c | 569 ++++++++++++++++++++++++++++++++++++++++ xen/drivers/acpi/arm/ridmap.c | 124 +++++++++ xen/drivers/passthrough/iommu.c | 75 ++++++ xen/include/acpi/acpi_iort.h | 57 ++++ xen/include/acpi/gen-iort.h | 7 + xen/include/acpi/ridmap.h | 77 ++++++ xen/include/asm-arm/acpi.h | 1 + xen/include/asm-arm/device.h | 11 +- xen/include/xen/fwnode.h | 125 +++++++++ xen/include/xen/iommu.h | 22 ++ xen/include/xen/kernel.h | 10 + xen/include/xen/pci.h | 3 + 19 files changed, 1484 insertions(+), 3 deletions(-) create mode 100644 xen/drivers/acpi/arm/Makefile create mode 100644 xen/drivers/acpi/arm/gen-iort.c create mode 100644 xen/drivers/acpi/arm/iort.c create mode 100644 xen/drivers/acpi/arm/ridmap.c create mode 100644 xen/include/acpi/acpi_iort.h create mode 100644 xen/include/acpi/gen-iort.h create mode 100644 xen/include/acpi/ridmap.h create mode 100644 xen/include/xen/fwnode.h