[PATCH] iommu/arm-smmu-qcom: Fix fastrpc compatible in ACTLR client match table

From: Shawn Guo

Date: Thu Apr 16 2026 - 11:29:38 EST


The qcom_smmu_actlr_client_of_match table used "qcom,fastrpc" as the
compatible to configure ACTLR for fastrpc SMMU clients. However, the
"qcom,fastrpc" compatible identifies the fastrpc transport (glink)
device, which does not have an iommus property and thus never attaches
to the SMMU directly.

The actual SMMU clients are the per-channel compute context bank (CB)
devices, which use the "qcom,fastrpc-compute-cb" compatible and each
carry their own iommus property. Replace the compatible string so that
ACTLR prefetch and caching settings are applied to the right devices.

Fixes: 3e35c3e725de ("iommu/arm-smmu: Add ACTLR data and support for qcom_smmu_500")
Signed-off-by: Shawn Guo <shengchao.guo@xxxxxxxxxxxxxxxx>
---
drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
index edd41b5a3b6a..2d006049dd61 100644
--- a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
+++ b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
@@ -39,7 +39,7 @@ static const struct of_device_id qcom_smmu_actlr_client_of_match[] = {
.data = (const void *) (PREFETCH_DEEP | CPRE | CMTLB) },
{ .compatible = "qcom,adreno-smmu",
.data = (const void *) (PREFETCH_DEEP | CPRE | CMTLB) },
- { .compatible = "qcom,fastrpc",
+ { .compatible = "qcom,fastrpc-compute-cb",
.data = (const void *) (PREFETCH_DEEP | CPRE | CMTLB) },
{ .compatible = "qcom,qcm2290-mdss",
.data = (const void *) (PREFETCH_SHALLOW | CPRE | CMTLB) },
--
2.43.0