Message ID | cover.1649935679.git.robin.murphy@arm.com (mailing list archive) |
---|---|
Headers | show |
Series | iommu: Retire bus_set_iommu() | expand |
Hi Robin, On 14.04.2022 14:42, Robin Murphy wrote: > Hi all, > > Here's another chapter in my saga of moving to per-instance IOMMU ops - > iommu_present() and iommu_capable() cleanups will be ongoing for another > cycle or two, while this one is at least self-contained within the > subsystem. The next steps after this are making iommu_domain_alloc() > instance-aware - which should finish the public API - and pulling the > fwnode/of_xlate bits into __iommu_probe_device(). And then making sense > of whatever's left :) > > For ease of review here I split out individual driver patches based on > whether there was any non-trivial change or affect on control flow; the > straightforward deletions are all lumped together since the whole series > needs applying together either way, but I'm happy to split the final > patch up further if anyone would like. > > Patch #3 for AMD is based on Mario's SWIOTLB patch here: > > https://lore.kernel.org/linux-iommu/20220404204723.9767-1-mario.limonciello@amd.com/ > > since that wants merging first as fix material. The series is also based > contextually (but not functionally) on my device_iommu_capable() patches > here: > > https://lore.kernel.org/linux-iommu/cover.1649089693.git.robin.murphy@arm.com/ > > since those are pretty much good to go now (I'll send a slightly-tweaked > final version once the iommu/core branch is open). Works fine on Samsung Exynos based boards (both, ARM 32bit and 64bit). Tested-by: Marek Szyprowski <m.szyprowski@samsung.com> # for Exynos relevant changes > > Thanks, > Robin. > > > Robin Murphy (13): > iommu: Always register bus notifiers > iommu: Move bus setup to IOMMU device registration > iommu/amd: Clean up bus_set_iommu() > iommu/arm-smmu: Clean up bus_set_iommu() > iommu/arm-smmu-v3: Clean up bus_set_iommu() > iommu/dart: Clean up bus_set_iommu() > iommu/exynos: Clean up bus_set_iommu() > iommu/ipmmu-vmsa: Clean up bus_set_iommu() > iommu/mtk: Clean up bus_set_iommu() > iommu/omap: Clean up bus_set_iommu() > iommu/tegra-smmu: Clean up bus_set_iommu() > iommu/virtio: Clean up bus_set_iommu() > iommu: Clean up bus_set_iommu() > > drivers/iommu/amd/amd_iommu.h | 1 - > drivers/iommu/amd/init.c | 9 +- > drivers/iommu/amd/iommu.c | 21 ---- > drivers/iommu/apple-dart.c | 30 +----- > drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 53 +--------- > drivers/iommu/arm/arm-smmu/arm-smmu.c | 84 +-------------- > drivers/iommu/arm/arm-smmu/qcom_iommu.c | 4 - > drivers/iommu/exynos-iommu.c | 9 -- > drivers/iommu/fsl_pamu_domain.c | 4 - > drivers/iommu/intel/iommu.c | 1 - > drivers/iommu/iommu.c | 109 +++++++++----------- > drivers/iommu/ipmmu-vmsa.c | 35 +------ > drivers/iommu/msm_iommu.c | 2 - > drivers/iommu/mtk_iommu.c | 13 +-- > drivers/iommu/mtk_iommu_v1.c | 13 +-- > drivers/iommu/omap-iommu.c | 6 -- > drivers/iommu/rockchip-iommu.c | 2 - > drivers/iommu/s390-iommu.c | 6 -- > drivers/iommu/sprd-iommu.c | 5 - > drivers/iommu/sun50i-iommu.c | 2 - > drivers/iommu/tegra-smmu.c | 29 ++---- > drivers/iommu/virtio-iommu.c | 24 ----- > include/linux/iommu.h | 1 - > 23 files changed, 62 insertions(+), 401 deletions(-) > Best regards