From: Bharat Bhushan <bharat.bhushan@xxxxxxxxxxxxx> PAMU (FSL IOMMU) has a concept of primary window and subwindows. Primary window corresponds to the complete guest iova address space (including MSI space), with respect to IOMMU_API this is termed as geometry. IOVA Base of subwindow is determined from the number of subwindows (configurable using iommu API). MSI I/O page must be within the geometry and maximum supported subwindows, so MSI IO-page is setup just after guest memory iova space. So first four patches are for defining the interface to get: - Number of MSI regions (which is number of MSI banks for powerpc) - MSI-region address range: Physical page which have the address/addresses used for generating MSI interrupt and size of the page. Last Patch is for setting up MSI iova-base for vfio devices assigned in msi subsystem, so that when msi-message will be composed then this configured iova will be used. Earlier we were using iommu interface for getting the configured iova which was not currect and Alex Williamson suggeested this type of interface. Bharat Bhushan (5): pci:msi: add weak function for returning msi region info powerpc: pci: Add arch specific msi region interface powerpc: msi: Extend the msi region interface to get info from fsl_msi pci: msi: expose msi region information functions vfio: setup iova-base for msi interrupts for vfio assigned device arch/powerpc/include/asm/machdep.h | 10 ++++ arch/powerpc/kernel/msi.c | 28 ++++++++++ arch/powerpc/sysdev/fsl_msi.c | 106 ++++++++++++++++++++++++++++++++++-- arch/powerpc/sysdev/fsl_msi.h | 19 ++++++- drivers/pci/msi.c | 34 ++++++++++++ include/linux/msi.h | 14 +++++ include/linux/pci.h | 21 +++++++ 7 files changed, 223 insertions(+), 9 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html