> > static int __init vfio_iommu_type1_init(void) > > { > > - if (!iommu_present(&pci_bus_type)) > > +#ifdef CONFIG_PCI > > + if (iommu_present(&pci_bus_type)) { > > + iommu_bus_type = &pci_bus_type; > > + /* For PCI targets, IOMMU_CAP_INTR_REMAP is required */ > > + require_cap_intr_remap = true; > > + } > > +#endif > > + if (!iommu_bus_type && iommu_present(&platform_bus_type)) > > + iommu_bus_type = &platform_bus_type; > > + > > + if(!iommu_bus_type) > > return -ENODEV; > > > > return vfio_register_iommu_driver(&vfio_iommu_driver_ops_type1); > > Is it possible to have a system with both PCI and platform devices? How > would you support that? Thanks, It most certainly is a requirement to support both. This is how all of our (FSL) SoCs will expect to work. I need to understand better why 'iommu_bus_type' exists at all... Stuart ��.n��������+%������w��{.n�����{��Ʀ����)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥