26.09.2020 11:07, Nicolin Chen пишет: ... > +#ifdef CONFIG_PCI > + if (!iommu_present(&pci_bus_type)) { Is this iommu_present() check really needed? > + pci_request_acs(); Shouldn't pci_request_acs() be invoked *after* bus_set_iommu() succeeds? > + err = bus_set_iommu(&pci_bus_type, &tegra_smmu_ops); > + if (err < 0) { > + bus_set_iommu(&platform_bus_type, NULL); > + iommu_device_unregister(&smmu->iommu); > + iommu_device_sysfs_remove(&smmu->iommu); > + return ERR_PTR(err); > + } > + } > +#endif > + > if (IS_ENABLED(CONFIG_DEBUG_FS)) > tegra_smmu_debugfs_init(smmu); > >