From nobody Mon Jun 15 06:29:31 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E68463C9EFE for ; Wed, 8 Apr 2026 13:08:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775653718; cv=none; b=cD5n8Da8LIg2EouZxy6WtOq1hlfICoQfOmrvcg6gfFxPkz5DjWiIEPPKkzlsWuUuCxyC7KjvUzBfKAvVNFSrPg8SF+xBMvdUY14+tqspXZ0973vBMkuWPfXZp9Zhht1h61a/DjQ6CNkZJTyJ+uqCDx4TgD+NI4NLggggh7Gh20Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775653718; c=relaxed/simple; bh=KQwk0Mdce+W21y7dALQ2Q9dpKAvtJUjSQiWHRa+1mjk=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Type; b=pEERyU1f9keiFSKT+DaC4MOc6Gp6UXiQb23p558kWbdcImSK7O3TmxWeNF1uPt46PV4C8glR1UBxGKcXqVCdi+DT2OJQDHlW7FRSZaej8A2VO6oeF84X+//DYn3Lt2DfvX8Q/RV+jV0aDye6ldNkG7s7tQMtb2bsFPc+F90qLZI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=hOQLOC4P; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=EIErUD+N; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="hOQLOC4P"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="EIErUD+N" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 638C5S9S2450559 for ; Wed, 8 Apr 2026 13:08:36 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=HntEs+8pzBI+y7qt7t4W2U rvZTm4MrVZ9wGejJw7xFA=; b=hOQLOC4Pqd9JJMAXOHmewoVLftRrhHPEDd1v17 /ttW0cuJGyHHlKIj/bbk+ZTexlZVNa2np9A3PRrbFSU3YhqVR0i3MiOZXWMHEfit h9KX0UiWjHrhZC2Q+JkbpfmXD/okIiIO/wT6vEXmhY1lHzQRBErd5+OJJ8qXfNAA xX19ydjn5RP8VNfeyjmV/wZiumJntxPwCloADOXELg3GV/wiN/26ztsnXu2uZEWc zSLjdeBnjVLqwQmzDfdLKMLgvma6LK72EgL3s4R9cellB0Ss2jAXjhNbPVmHfR2s NbG50WP8K8M9ZJJX6Wdqg4vtX9vI+ORk6JJsXF3lm4QM7HMw== Received: from mail-pg1-f197.google.com (mail-pg1-f197.google.com [209.85.215.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ddae6av2n-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 08 Apr 2026 13:08:35 +0000 (GMT) Received: by mail-pg1-f197.google.com with SMTP id 41be03b00d2f7-c769e2b1bd0so3431685a12.2 for ; Wed, 08 Apr 2026 06:08:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775653715; x=1776258515; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=HntEs+8pzBI+y7qt7t4W2UrvZTm4MrVZ9wGejJw7xFA=; b=EIErUD+NHWvMyHfpXOQFLj7npItGPE7gsEfyjEopFTT/0GBw5AfWQn0IUnjlAPCijQ v9XZ8KNEqpn052bA2WE2mqkbhev/BSneUKVnxXeDgkDVo5UxNiz3jZkcWSRmbnZbE6zx P/hMYQ6z0Pg/516gi56eP0cq44SZYyr/xVTFad+Nsw+9jyfB3OfMoy1HDrEPRQ1/H9+W Iyn48FJQld7nrYs7b3U3ZWF2sWzf1K8HOGNwFV6f4G1CWg/E7wOxxJV5SksiOtHOuH2a MIVEiXEQrQwchXo7vYpEneqSP4oBM1qsrxuMeLNohYXAnIprn18bY9qe4NapoyZGJ/RS zATQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775653715; x=1776258515; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=HntEs+8pzBI+y7qt7t4W2UrvZTm4MrVZ9wGejJw7xFA=; b=PivyKP+RBx5yWBEhKHKJ1LW0lTzXWxGeVn1clRL+bmSFfRiCREl7Q1PMEby+tTQdjJ 3AhPL//u3BVz4f0ClesGTrePhgGiO2gDTf01jxssys5nLy6nzrpN40oZ267eDPY5Plxa 6ndy7l89zCVionj5u5i7IXEABulvEdzPVX/bV+FN8eM2Hxoblv16WqTYSQ4924V0q1Wh 3iaeP4SxIZm8G078ueLjA7l2aMpGfUDxe3KADSGK3mTuOXoXW5RJnCaBJ4O4hyIZqG8I TAtHsYyooWU/+ibHYkAjJr8H5jtvebTyY6BZ0hLW1ODnQaVvySc0+9itrimjUgUmwRNq 3SUQ== X-Forwarded-Encrypted: i=1; AJvYcCVeBTj2mYYOKLCQAXr7B4XUuv/bcZiU61Vn7nbLe5uR4EMq41+/+wlrwSglZxRMoQrnDOOqPNqJ3UZXnVU=@vger.kernel.org X-Gm-Message-State: AOJu0YxVlNiP5530DLn+B6yeQNxw4xo/1T2Qd6uANyFPRu15AoO56gFT 9O1MCuFEidGeR4fIkbwJU9C8nXWEHsqIxUiiCQOR2r8yTYQGpuxOoGJG6c8xmNuVxpj7Ye6KKAD sn6o9UC+7Oc0AUqwzb3AIyV4YtOHjuUH93V5Vhpm4Vq/c6cV0HPA5MxkSfJZxs+Zkttg= X-Gm-Gg: AeBDietVp/Dg6EGTdgBcgRdm3A5ZhZin8DB6HTe/T6+Jku2u09RUpikLQfMT2jT8OLG 8YaLx9mq7V3yeEeg0+ug07pqCVHrsACQABufDDjWb/v262X2SnYBLHAIUayFphmmcfmv66iHLBX 3JlVvNRGbN5ydvWUprx76wyFvLfCjTqerfGHuamfCuhAqC/i8a69aAN98RFChJHLB4Kj7LVejmS CHU8LymCS5D/bqkHbeoVxNFNVP6pCuffBgfYcymPRj7th8sTuDrj9U2wWNQr9qaTn05nGZxPQ9u xMooZmUSxhCzCjnkC4LfXUeC+5Ah7BeibCbIvhM3+0qEDXa6DysvAN/3GfpMsIIenIn9vj/bfss F04aGS7mQ/PbxXHB1x8RTSSUUu6kEYZ1gBRhBavxezhrwqk0jI3Ta X-Received: by 2002:a05:6a00:2e85:b0:81f:3fbd:ccf with SMTP id d2e1a72fcca58-82d0da9dca4mr19823923b3a.23.1775653714522; Wed, 08 Apr 2026 06:08:34 -0700 (PDT) X-Received: by 2002:a05:6a00:2e85:b0:81f:3fbd:ccf with SMTP id d2e1a72fcca58-82d0da9dca4mr19823878b3a.23.1775653714032; Wed, 08 Apr 2026 06:08:34 -0700 (PDT) Received: from hu-bibekkum-hyd.qualcomm.com ([202.46.22.19]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82cf9c4126bsm20426192b3a.36.2026.04.08.06.08.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Apr 2026 06:08:33 -0700 (PDT) From: bibek.patro@oss.qualcomm.com To: Rob Clark , Will Deacon , Robin Murphy , Joerg Roedel Cc: Dmitry Baryshkov , iommu@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, srinivas.kandagatla@oss.qualcomm.com, Bibek Kumar Patro Subject: [PATCH] iommu/arm-smmu-qcom: Fix fastrpc compatible string in ACTLR client match table Date: Wed, 8 Apr 2026 18:38:25 +0530 Message-Id: <20260408130825.3268733-1-bibek.patro@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA4MDEyMSBTYWx0ZWRfXx1kTaCIO3Dcp adEcIa64F8kLRUHffj6Uz6dXt74KG/IlHpFuxtj2hS1kYyht/X4WpyN7nOWTmflINf1M8USfcQ+ JDPRfHeIcOCHI/6VtGJ9VUnrH+OioRbgjgtQONW5hFK2mr0x3LZF9SWzRcibbTqEqZcu1zuDqau zVE53LLFRQPtcTDd1UBiN9Q6FcvXdZrfIg2uZH1dSJyp9kboPugfAvOAdzkT7U+CxLXNN/RV/Ks WqO7wvQq6LfYHIzMWhNBZ3qZV35BVScfAHsvRKnK1diVHmMMPMK0KTVr/FjKbvY+RCcNs6Kj51q a7hl4U1EAtBT318V7NEByQXgWr8xaY+JYrgn6ysKDLF2FfyhbjAHW2SAmqbymfELSWjgk6pjwKo VFsPDMe+lyPS99Kd6zvtGKNNbKN9Mf7MrfH5PstU/RAKu4OnWM6jzVCb9jQiZigVhMe4iJww+3d rM4vq3QPGGobAu+gBfA== X-Proofpoint-GUID: 6joXzOqrQH_XW8gW8iJflGEisNWRgGkJ X-Proofpoint-ORIG-GUID: 6joXzOqrQH_XW8gW8iJflGEisNWRgGkJ X-Authority-Analysis: v=2.4 cv=K4AS2SWI c=1 sm=1 tr=0 ts=69d65353 cx=c_pps a=rz3CxIlbcmazkYymdCej/Q==:117 a=fChuTYTh2wq5r3m49p7fHw==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=bCvnzbEyROO2_-PIDOgA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bFCP_H2QrGi7Okbo017w:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-08_04,2026-04-08_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 impostorscore=0 lowpriorityscore=0 clxscore=1011 phishscore=0 malwarescore=0 spamscore=0 bulkscore=0 adultscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604080121 From: Bibek Kumar Patro The qcom_smmu_actlr_client_of_match table contained "qcom,fastrpc" as the compatible string for applying ACTLR prefetch settings to FastRPC devices. However, "qcom,fastrpc" is the compatible string for the parent rpmsg channel node, which is not an IOMMU client =E2=80=94 it carries no "iommus" property in the device tree and is never attached to an SMMU context bank. The actual IOMMU clients are the compute context bank (CB) child nodes, which use the compatible string "qcom,fastrpc-compute-cb". These nodes carry the "iommus" property and are probed by fastrpc_cb_driver via fastrpc_cb_probe(), which sets up the DMA mask and IOMMU mappings for each FastRPC session. The device tree structure is: fastrpc { compatible =3D "qcom,fastrpc"; /* rpmsg channel, no iommus */ ... compute-cb@3 { compatible =3D "qcom,fastrpc-compute-cb"; iommus =3D <&apps_smmu 0x1823 0x0>; /* actual IOMMU client */ }; }; Since qcom_smmu_set_actlr_dev() calls of_match_device() against the device being attached to the SMMU context bank, the "qcom,fastrpc" entry was never matching any device. As a result, the ACTLR prefetch settings (PREFETCH_DEEP | CPRE | CMTLB) were silently never applied for FastRPC compute context banks. Fix this by replacing "qcom,fastrpc" with "qcom,fastrpc-compute-cb" in the match table so that the ACTLR settings are correctly applied to the compute CB devices that are the true IOMMU clients. Assisted-by: Anthropic:claude-4-6-sonnet Fixes: 3e35c3e725de ("iommu/arm-smmu: Add ACTLR data and support for qcom_s= mmu_500") Signed-off-by: Bibek Kumar Patro Reviewed-by: Dmitry Baryshkov Reviewed-by: Shawn Guo --- While there is an ongoing discussion [1] on how to differentiate ACTLR prefetch settings between compute DSP and audio DSP fastrpc devices, it is necessary to first fix the compatible string to "qcom,fastrpc-compute-cb= ". Both compute DSP and audio DSP fastrpc nodes use this compatible string, so both will receive the ACTLR settings after this fix. However, for audio DSP devices the effect remains the same as the current state since they do not actively use prefetch =E2=80=94 the write is effect= ively a NOP for them. The fix is meaningful for compute DSP devices, which actively use prefetch and were previously being silently skipped. [1]: https://lore.kernel.org/all/9b4c895a-c822-40e6-bb92-8fdcd09c82d3@oss.q= ualcomm.com/ 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_o= f_match[] =3D { .data =3D (const void *) (PREFETCH_DEEP | CPRE | CMTLB) }, { .compatible =3D "qcom,adreno-smmu", .data =3D (const void *) (PREFETCH_DEEP | CPRE | CMTLB) }, - { .compatible =3D "qcom,fastrpc", + { .compatible =3D "qcom,fastrpc-compute-cb", .data =3D (const void *) (PREFETCH_DEEP | CPRE | CMTLB) }, { .compatible =3D "qcom,qcm2290-mdss", .data =3D (const void *) (PREFETCH_SHALLOW | CPRE | CMTLB) }, -- 2.34.1