diff options
| author | Ashish Mhetre <amhetre@nvidia.com> | 2026-07-26 08:19:02 +0000 |
|---|---|---|
| committer | Will Deacon <will@kernel.org> | 2026-07-28 09:49:46 +0000 |
| commit | 95ed2da20283844dfc0bb9d78c898b8529284af6 (patch) | |
| tree | ab5dbaf1f8a53937a6a48260e298210dd4408637 /tools/perf/scripts/python/bin | |
| parent | 097bf4a02f2df3e4ea8729664df436d0fe914ea5 (diff) | |
iommu/arm-smmu-v3: Add CFGI/TLBI-repeat workaround
Tegra264 SMMU instances need every CFGI/TLBI command sequence issued
twice, with the second issue executing only after the first issue's
CMD_SYNC has completed:
TLBI/CFGI ... CMD_SYNC TLBI/CFGI ... CMD_SYNC
ATC_INV is not affected and must never be doubled.
Add arm_smmu_erratum_repeat_tlbi_cfgi_key and a file-local
arm_smmu_erratum_cmd_needs_repeating() helper that gates on the static
key first and then range-checks the opcode (CFGI_STE .. ATC_INV).
Rename the existing arm_smmu_cmdq_issue_cmdlist() to
__arm_smmu_cmdq_issue_cmdlist() and add a thin wrapper of the original
name that re-issues the same cmdlist a second time when the predicate
fires. Register the new condition with
arm_smmu_cmdq_batch_force_sync() too.
No callers enable the static key yet, so there is no functional change.
A subsequent change will enable the key on affected instances.
Suggested-by: Nicolin Chen <nicolinc@nvidia.com>
Reviewed-by: Nicolin Chen <nicolinc@nvidia.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Ashish Mhetre <amhetre@nvidia.com>
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/bin')
0 files changed, 0 insertions, 0 deletions
