SMMU HTTU sync from 5.10
Jean-Philippe Brucker (1): iommu/arm-smmu-v3: Add support for Hardware Translation Table Update
Keqian Zhu (3): iommu: Introduce dirty log tracking framework vfio/iommu_type1: Fix the logic of updating num_non_hwdbm_domains iommu: Stop tracking the dirty log status of iommu_domain
Kunkun Jiang (18): iommu/io-pgtable-arm: Add quirk ARM_HD and ARM_BBMLx iommu/io-pgtable-arm: Fix attach device failed when smmuv3 supports HTTU iommu/io-pgtable-arm: Add and realize split_block ops iommu/io-pgtable-arm: Add and realize merge_page ops iommu/io-pgtable-arm: Add and realize sync_dirty_log ops iommu/io-pgtable-arm: Add and realize clear_dirty_log ops iommu/arm-smmu-v3: Add feature detection for BBML iommu/arm-smmu-v3: Realize switch_dirty_log iommu ops iommu/arm-smmu-v3: Realize sync_dirty_log iommu ops iommu/arm-smmu-v3: Realize clear_dirty_log iommu ops iommu/arm-smmu-v3: Realize support_dirty_log iommu ops vfio/iommu_type1: Add HWDBM status maintenance vfio/iommu_type1: Optimize dirty bitmap population based on iommu HWDBM vfio/iommu_type1: Add support for manual dirty log clear vfio/iommu_type1: replace kvmalloc with kvzalloc and kfree with kvfree iommu/arm-smmu-v3: Enable HTTU for stage1 with io-pgtable mapping iommu: Fix compliation failure caused by iommu_device_register vfio/iommu: Fix uncorrect type parameters which used in bitmap operations
jiaqingtong (9): fix conflit with 41e1eb2546e9c8200d32f11e4b47d86d156a5a97("iommu/io-pgtable-arm: Prepare PTE methods for handling multiple entries") fix conflit with 41e1eb2546e9c8200d32f11e4b47d86d156a5a97("iommu/io-pgtable-arm: Prepare PTE methods for handling multiple entries") previes commits delete __arm_lpae_set_pte, add it back. Fixes: 1fe27be5ffec ("iommu/io-pgtable-arm: Implement arm_lpae_unmap_pages()") fix d86d9f910d53 ,change iommu_pgsize's para previes commits delete __arm_lpae_set_pte, add it back. Fixes: 1fe27be5ffec ("iommu/io-pgtable-arm: Implement arm_lpae_unmap_pages()") vfio_domain delete port member. Fixes: 71cfafda9c9b ("vfio: Move the Intel no-snoop control off of IOMMU_CACHE") iommu:Introduce dirty log tracking framework: conflit with 9abe2ac834851a7d0b0756e295cf7a292c45ca53 change to arm_lpae_install_table to accept arm_lpae_iopte previes commits delete __arm_lpae_set_pte, add it back. Fixes: 1fe27be5ffec ("iommu/io-pgtable-arm: Implement arm_lpae_unmap_pages()") conflit with 9a630a4b,need move to iommu_domain_ops conflit with ec288a2c, change func
.../iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 2 + drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 268 +++++++++++- drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 17 +- drivers/iommu/io-pgtable-arm.c | 411 +++++++++++++++++- drivers/iommu/iommu.c | 188 +++++++- drivers/vfio/vfio_iommu_type1.c | 314 ++++++++++++- include/linux/io-pgtable.h | 23 + include/linux/iommu.h | 67 +++ include/trace/events/iommu.h | 63 +++ include/uapi/linux/vfio.h | 36 +- 10 files changed, 1365 insertions(+), 24 deletions(-)
base-commit: f898c7c8c095242ad10bfff5c1f8c52c64488f96