[GIT PULL] iommu/arm-smmu: Updates for 5.15
From: Will Deacon
Date: Fri Aug 13 2021 - 12:47:43 EST
Hi Joerg,
Please pull these Arm SMMU updates for 5.15. There's not tonnes here, but
a good mixture of optimisations and cleanups -- summary in the tag.
This applies cleanly against iommu/next, but I suspect it will conflict
with Robin's series on the list. Please shout if you need anything from
me to help with that (e.g. rebase, checking a merge conflict).
Cheers,
Will
--->8
The following changes since commit ff1176468d368232b684f75e82563369208bc371:
Linux 5.14-rc3 (2021-07-25 15:35:14 -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 fac956710ab0812f9e395e9f7a27da551412830f:
iommu/arm-smmu-v3: Stop pre-zeroing batch commands (2021-08-13 14:26:06 +0100)
----------------------------------------------------------------
Arm SMMU updates for 5.15
- SMMUv3
* Minor optimisation to avoid zeroing struct members on CMD submission
* Increased use of batched commands to reduce submission latency
* Refactoring in preparation for ECMDQ support
- SMMUv2
* Fix races when probing devices with identical StreamIDs
* Optimise walk cache flushing for Qualcomm implementations
* Allow deep sleep states for some Qualcomm SoCs with shared clocks
----------------------------------------------------------------
Ashish Mhetre (1):
iommu: Fix race condition during default domain allocation
John Garry (2):
iommu/arm-smmu-v3: Remove some unneeded init in arm_smmu_cmdq_issue_cmdlist()
iommu/arm-smmu-v3: Stop pre-zeroing batch commands
Krishna Reddy (1):
iommu/arm-smmu: Fix race condition during iommu_group creation
Sai Prakash Ranjan (2):
iommu/arm-smmu: Add clk_bulk_{prepare/unprepare} to system pm callbacks
iommu/arm-smmu: Optimize ->tlb_flush_walk() for qcom implementation
Zhen Lei (4):
iommu/arm-smmu-v3: Use command queue batching helpers to improve performance
iommu/arm-smmu-v3: Add and use static helper function arm_smmu_cmdq_issue_cmd_with_sync()
iommu/arm-smmu-v3: Add and use static helper function arm_smmu_get_cmdq()
iommu/arm-smmu-v3: Extract reusable function __arm_smmu_cmdq_skip_err()
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 89 +++++++++++++++++------------
drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 11 ++++
drivers/iommu/arm/arm-smmu/arm-smmu.c | 45 ++++++++++++---
drivers/iommu/arm/arm-smmu/arm-smmu.h | 1 +
drivers/iommu/iommu.c | 2 +
5 files changed, 106 insertions(+), 42 deletions(-)