Hi Linus, The following changes since commit 0238df646e6224016a45505d2c111a24669ebe21: Linux 4.19-rc7 (2018-10-07 17:26:02 +0200) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git tags/iommu-updates-v4.20 for you to fetch changes up to 2f2fbfb71ecc221352d84ae6430b42031ae5b654: Merge branches 'arm/renesas', 'arm/smmu', 'ppc/pamu', 'x86/vt-d', 'x86/amd' and 'core' into next (2018-10-10 18:09:37 +0200) ---------------------------------------------------------------- IOMMU Updates for Linux v4.20 These updates bring: - Debugfs support for the Intel VT-d driver. When enabled, it now also exposes some of its internal data structures to user-space for debugging purposes. - ARM-SMMU driver now uses the generic deferred flushing and fast-path iova allocation code. This is expected to be a major performance improvement, as this allocation path scales a lot better. - Support for r8a7744 in the Renesas iommu driver - Couple of minor fixes and improvements all over the place ---------------------------------------------------------------- Andrew Murray (2): iommu/arm-smmu-v3: Add SPDX header iommu/arm-smmu-v3: Remove unnecessary wrapper function Biju Das (1): dt-bindings: iommu: ipmmu-vmsa: Add r8a7744 support Colin Ian King (1): iommu/fsl: Fix spelling mistake pci_endpt_partioning -> pci_endpt_partitioning Ganapatrao Kulkarni (1): iommu/iova: Optimise attempts to allocate iova from 32bit address range Gayatri Kammela (1): iommu/vt-d: Add debugfs support to show register contents Joerg Roedel (3): Merge branch 'for-joerg/arm-smmu/updates' of git://git.kernel.org/.../will/linux into arm/smmu iommu/amd: Move iommu_init_pci() to .init section Merge branches 'arm/renesas', 'arm/smmu', 'ppc/pamu', 'x86/vt-d', 'x86/amd' and 'core' into next John Garry (1): iommu/arm-smmu-v3: Fix a couple of minor comment typos Kuninori Morimoto (1): iommu/ipmmu-vmsa: Convert to SPDX identifiers Lu Baolu (1): iommu/amd: Add default branch in amd_iommu_capable() Nipun Gupta (7): Documentation: fsl-mc: add iommu-map device-tree binding for fsl-mc bus iommu/of: make of_pci_map_rid() available for other devices too iommu/of: support iommu configuration for fsl-mc devices iommu/arm-smmu: Add support for the fsl-mc bus bus/fsl-mc: support dma configure for devices on fsl-mc bus bus/fsl-mc: set coherent dma mask for devices on fsl-mc bus arm64: dts: ls208xa: comply with the iommu map binding for fsl_mc Rami Rosen (1): iommu: Fix a typo Robin Murphy (8): iommu: Add fast hook for getting DMA domains iommu/dma: Use fast DMA domain lookup arm64/dma-mapping: Mildly optimise non-coherent IOMMU ops iommu: Tidy up window attributes iommu: Remove .domain_{get,set}_windows iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() iommu/io-pgtable-arm-v7s: Add support for non-strict mode iommu/arm-smmu: Support non-strict mode Sohil Mehta (5): iommu/vt-d: Relocate struct/function declarations to its header files iommu/vt-d: Update register definitions to VT-d 3.0 specification iommu/vt-d: Enable base Intel IOMMU debugfs support iommu/vt-d: Add debugfs support for Interrupt remapping iommu/vt-d: Add debugfs support to show context internals Will Deacon (1): iommu/arm-smmu: Ensure that page-table updates are visible before TLBI Zhen Lei (7): iommu/arm-smmu-v3: Fix unexpected CMD_SYNC timeout iommu/arm-smmu-v3: Avoid back-to-back CMD_SYNC operations iommu/arm-smmu-v3: Implement flush_iotlb_all hook iommu/dma: Add support for non-strict mode iommu: Add "iommu.strict" command line option iommu/io-pgtable-arm: Add support for non-strict mode iommu/arm-smmu-v3: Add support for non-strict mode Documentation/admin-guide/kernel-parameters.txt | 12 + .../bindings/iommu/renesas,ipmmu-vmsa.txt | 1 + .../devicetree/bindings/misc/fsl,qoriq-mc.txt | 39 +++ arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi | 7 +- arch/arm64/mm/dma-mapping.c | 10 +- arch/x86/include/asm/irq_remapping.h | 2 + drivers/bus/fsl-mc/fsl-mc-bus.c | 16 +- drivers/iommu/Kconfig | 13 + drivers/iommu/Makefile | 1 + drivers/iommu/amd_iommu.c | 2 + drivers/iommu/amd_iommu_init.c | 2 +- drivers/iommu/arm-smmu-v3.c | 140 +++++---- drivers/iommu/arm-smmu.c | 106 +++++-- drivers/iommu/dma-iommu.c | 55 +++- drivers/iommu/fsl_pamu_domain.c | 119 ++++---- drivers/iommu/intel-iommu-debugfs.c | 314 +++++++++++++++++++++ drivers/iommu/intel-iommu.c | 32 +-- drivers/iommu/intel_irq_remapping.c | 2 +- drivers/iommu/io-pgtable-arm-v7s.c | 11 +- drivers/iommu/io-pgtable-arm.c | 23 +- drivers/iommu/io-pgtable.h | 5 + drivers/iommu/iommu.c | 58 ++-- drivers/iommu/iova.c | 22 +- drivers/iommu/ipmmu-vmsa.c | 5 +- drivers/iommu/of_iommu.c | 25 +- drivers/of/base.c | 102 +++++++ drivers/of/irq.c | 5 +- drivers/pci/of.c | 101 ------- include/linux/fsl/mc.h | 8 + include/linux/intel-iommu.h | 72 +++++ include/linux/iommu.h | 10 +- include/linux/iova.h | 1 + include/linux/of.h | 11 + include/linux/of_pci.h | 10 - 34 files changed, 986 insertions(+), 356 deletions(-) create mode 100644 drivers/iommu/intel-iommu-debugfs.c Please pull. Thanks, Joerg