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

From: Will Deacon
Date: Wed Jun 16 2021 - 06:58:20 EST


Hi Joerg,

Please pull these Arm SMMU updates for 5.14.

Of particular note is the support for stalling faults with platform devices
using SMMUv3 -- this concludes the bulk of the SVA work from Jean-Philippe.

Other than that, one thing to note is that the patch from Thierry adding
the '->prove_finalize' implementation hook is also shared with the
memory-controller tree, since they build on top of it to get the SMMU
working with an nvidia SOC. Unfortunately, that patch also caused a NULL
dereference on other parts, so there's a subsequent patch on top here
addressing that.

Due to the above, the sooner this lands in -next, the better.

Cheers,

Will

--->8

The following changes since commit c4681547bcce777daf576925a966ffa824edd09d:

Linux 5.13-rc3 (2021-05-23 11:42:48 -1000)

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 ddd25670d39b2181c7bec33301f2d24cdcf25dde:

Merge branch 'for-thierry/arm-smmu' into for-joerg/arm-smmu/updates (2021-06-16 11:30:55 +0100)

----------------------------------------------------------------
Arm SMMU updates for 5.14

- SMMUv3:

* Support stalling faults for platform devices

* Decrease defaults sizes for the event and PRI queues

- SMMUv2:

* Support for a new '->probe_finalize' hook, needed by Nvidia

* Even more Qualcomm compatible strings

* Avoid Adreno TTBR1 quirk for DB820C platform

- Misc:

* Trivial cleanups/refactoring

----------------------------------------------------------------
Amey Narkhede (1):
iommu/arm: Cleanup resources in case of probe error path

Bixuan Cui (1):
iommu/arm-smmu-v3: Change *array into *const array

Eric Anholt (2):
iommu/arm-smmu-qcom: Skip the TTBR1 quirk for db820c.
arm64: dts: msm8996: Mark the GPU's SMMU as an adreno one.

Jean-Philippe Brucker (4):
dt-bindings: Document stall property for IOMMU masters
ACPI/IORT: Enable stall support for platform devices
iommu/arm-smmu-v3: Add stall support for platform devices
iommu/arm-smmu-v3: Ratelimit event dump

Martin Botka (1):
iommu/arm-smmu-qcom: Add sm6125 compatible

Sai Prakash Ranjan (2):
iommu/arm-smmu-qcom: Add SC7280 SMMU compatible
iommu/arm-smmu-qcom: Move the adreno smmu specific impl

Shawn Guo (2):
iommu/arm-smmu-qcom: hook up qcom_smmu_impl for ACPI boot
iommu/arm-smmu-qcom: Protect acpi_match_platform_list() call with CONFIG_ACPI

Thierry Reding (1):
iommu/arm-smmu: Implement ->probe_finalize()

Will Deacon (2):
iommu/arm-smmu: Check smmu->impl pointer before dereferencing
Merge branch 'for-thierry/arm-smmu' into for-joerg/arm-smmu/updates

Xiyu Yang (2):
iommu/arm-smmu: Fix arm_smmu_device refcount leak when arm_smmu_rpm_get fails
iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation

Zhen Lei (2):
iommu/arm-smmu-v3: Decrease the queue size of evtq and priq
iommu/arm-smmu-v3: Remove unnecessary oom message

Documentation/devicetree/bindings/iommu/iommu.txt | 18 ++
arch/arm64/boot/dts/qcom/msm8996.dtsi | 2 +-
drivers/acpi/arm64/iort.c | 4 +-
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 59 +++++-
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 222 ++++++++++++++++++++--
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 48 ++++-
drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 43 ++++-
drivers/iommu/arm/arm-smmu/arm-smmu.c | 38 +++-
drivers/iommu/arm/arm-smmu/arm-smmu.h | 1 +
drivers/iommu/arm/arm-smmu/qcom_iommu.c | 13 +-
10 files changed, 409 insertions(+), 39 deletions(-)