[GIT PULL] iommu/arm-smmu: Updates for 6.10

Will Deacon will at kernel.org
Fri May 3 04:10:37 PDT 2024


Hi Joerg,

Please can you pull these Arm SMMU updates for 6.10? Similarly to last
time, we have quite a lot here mainly thanks to Jason's ongoing rework
of the SMMUv3 driver in pursuit of full support for IOMMUFD.

Summary in the tag.

Cheers,

Will

--->8

The following changes since commit 39cd87c4eb2b893354f3b850f916353f2658ae6f:

  Linux 6.9-rc2 (2024-03-31 14:32:39 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git tags/arm-smmu-updates

for you to fetch changes up to 56e1a4cc2588a7cb9664457a62fd7a77e005aa01:

  iommu/arm-smmu-v3: Add unit tests for arm_smmu_write_entry (2024-05-01 15:33:53 +0100)

----------------------------------------------------------------
Arm SMMU updates for 6.10

- SMMUv2:
  * Support for fault debugging hardware on Qualcomm implementations
  * Re-land support for the ->domain_alloc_paging() callback

- SMMUv3:
  * Improve handling of MSI allocation failure
  * Drop support for the "disable_bypass" cmdline option
  * Major rework of the CD creation code, following on directly from the
    STE rework merged last time around.
  * Add unit tests for the new STE/CD manipulation logic

----------------------------------------------------------------
Aleksandr Aprelkov (1):
      iommu/arm-smmu-v3: Free MSIs in case of ENOMEM

Georgi Djakov (5):
      dt-bindings: iommu: Add Qualcomm TBU
      iommu/arm-smmu-qcom-debug: Add support for TBUs
      iommu/arm-smmu: Allow using a threaded handler for context interrupts
      iommu/arm-smmu-qcom: Use a custom context fault handler for sdm845
      iommu/arm-smmu-qcom: Use the custom fault handler on more platforms

Jason Gunthorpe (13):
      iommu/arm-smmu-v3: Do not allow a SVA domain to be set on the wrong PASID
      iommu/arm-smmu-v3: Do not ATC invalidate the entire domain
      iommu/arm-smmu-v3: Add a type for the CD entry
      iommu/arm-smmu: Convert to domain_alloc_paging()
      iommu/arm-smmu-v3: Add an ops indirection to the STE code
      iommu/arm-smmu-v3: Make CD programming use arm_smmu_write_entry()
      iommu/arm-smmu-v3: Move the CD generation for S1 domains into a function
      iommu/arm-smmu-v3: Consolidate clearing a CD table entry
      iommu/arm-smmu-v3: Make arm_smmu_alloc_cd_ptr()
      iommu/arm-smmu-v3: Allocate the CD table entry in advance
      iommu/arm-smmu-v3: Move the CD generation for SVA into a function
      iommu/arm-smmu-v3: Build the whole CD in arm_smmu_make_s1_cd()
      iommu/arm-smmu-v3: Add unit tests for arm_smmu_write_entry

Robin Murphy (1):
      iommu/arm-smmu-v3: Retire disable_bypass parameter

Will Deacon (1):
      iommu/arm-smmu-qcom: Don't build debug features as a kernel module

 .../devicetree/bindings/iommu/qcom,tbu.yaml        |  69 +++
 drivers/iommu/Kconfig                              |  25 +-
 drivers/iommu/arm/arm-smmu-v3/Makefile             |   1 +
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c    | 167 ++++--
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-test.c   | 465 +++++++++++++++++
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c        | 559 +++++++++++----------
 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h        |  60 ++-
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom-debug.c   | 496 ++++++++++++++++++
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c         |   8 +
 drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h         |   2 +
 drivers/iommu/arm/arm-smmu/arm-smmu.c              |  20 +-
 drivers/iommu/arm/arm-smmu/arm-smmu.h              |   3 +
 12 files changed, 1530 insertions(+), 345 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/iommu/qcom,tbu.yaml
 create mode 100644 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-test.c



More information about the linux-arm-kernel mailing list