From mboxrd@z Thu Jan 1 00:00:00 1970 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 A37FF29E0E6 for ; Thu, 27 Nov 2025 06:26:28 +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=1764224790; cv=none; b=mof6L3VVL46EolLAy+aTK6oHNRVt/IrFhT0MRYzdG+Lb3EAZSGphR2+FeXsfJitTMyoO8APVN3r+ej6pIj3Ay1k6aPWLdQWlBO/RllBQR/FaXt8/MNA5WexjS4sdqVhy8yLSZBdotqHBK9+5TViODCyw7LXDVODkte5GTc8tWSo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764224790; c=relaxed/simple; bh=QZfRN5EL7HcjaNcqCfhqBeD4PYZh7aTpR3OI6puE9gU=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=TVBYsPr6ZuS6YHH2lDzb7j9m+cJXP4WH0tvJJAJHJMjRhgs0nArVtaL42heQLZWVhZCNclOulvdDrXsNdrtV2MlOd7dTzkHic1mi2t8aUwjERL6wDXZwP2oAC0GcjTK/guNB3gqi3gFLVGzYh1XtkW3wYuK4VxhQM4XPTulIiFE= 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=NoS+ifXH; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=jagbbY4M; 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="NoS+ifXH"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="jagbbY4M" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 5AQMV0Ku2122068 for ; Thu, 27 Nov 2025 06:26:27 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= QZfRN5EL7HcjaNcqCfhqBeD4PYZh7aTpR3OI6puE9gU=; b=NoS+ifXHSqZK+kzG dKKbcqJlt6wgMK5g4RzGe9KeLPpX63bLkeRYNLXAnse/1RfDYdYN26qgmgRLoHKz aHV6yZaDmchLdAFStAq470l72lTnXPnAieuvVMytqKgBuGA5gfHK3LucZqLtjQZq d16nEknY3hxn5/U4WGijVdiT2zjc6I3Iowp2+XQ0f+zTZfhaWErn5E1cAHWTHq0x eBghblPi+svfDSU335QahmaUSAL65XCTlqw5ZijBe/CdUjcFCgxlUmj0b7NtHhLA qS9wDWKQLSzv2X6kTpSjQw+wC3ZNM9Cl6jOeLg2DZPRrk4Vuhg/kNsb1orficqHO al3ylg== Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ap0b32pgn-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 27 Nov 2025 06:26:27 +0000 (GMT) Received: by mail-pf1-f199.google.com with SMTP id d2e1a72fcca58-7a4c4eeeef2so1056636b3a.0 for ; Wed, 26 Nov 2025 22:26:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1764224786; x=1764829586; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=QZfRN5EL7HcjaNcqCfhqBeD4PYZh7aTpR3OI6puE9gU=; b=jagbbY4MlHbaKUafBhy3nplrnBoMMyhqY+AqZwuDfS8p6n5O7FvGUNxhTP4PxTAgh7 u2wQUj4jr4ST87NIhwMHS6ieAH8QyHq0HzTHtR0A/JsVduNMZgbfeftVqi9OJXXxVBl3 WEdybYYu0iITI+ml/2xxolwVkdgw6xUMc0VUQTbTKAzS45RR4kRPEWmyxOh0/5eSQ99O 2IafONQnVsHJ3sDtm1rKXbIyb0aOz086Z0EE0OXA2SUx0/VauUqRRUKw2NPNKMsLsCSJ 8bnfSKHjLk8HEJj2gkij7CuUwU+mmb/PithXB8QMFKB+sJ48fomdLK51BUuwYOuNRbTO 85dQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764224786; x=1764829586; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=QZfRN5EL7HcjaNcqCfhqBeD4PYZh7aTpR3OI6puE9gU=; b=v/hIrcDQuak9+S82vzL8i+VNmElsTyPLO0NtTuh7IDjzzK6sDjkkpkXgqLrI3iTowm Nghlcn0M+lK/A6p9WvCPhPvx+IujB64YUBi3XK9/mCGmqqmEBhZYSelcDzYfyM3IqB+M 0ZcwZqECy46yWSEn0zYh2XCPDsQ3cBXCmTlJ1QlzepeiSHjsU1Fflz7Mh/nAkVDsjbNU VUoiaGoQXYT9nsLyaTqYB7QNxAy2/V2gwO8cxZvHcDbGFg6kur6ouOGIbd1hIuxQSit7 fpPNk/PXXwmAubprJP6W8IVISFAOvPSGvWNc8v3g3mkHU8OUHdhMEyEj3ZOlXEYhSDpi oxkg== X-Forwarded-Encrypted: i=1; AJvYcCUhVOlOTsUAd61+RWXfjhJTYhQc6/eCn96qWtDDhyK+w3J4jE4lvsTYpoiNevhuaDB713WZsL/FOwlz5Qk=@vger.kernel.org X-Gm-Message-State: AOJu0Yy5/n7heXp8MyEc6H3Q58fuoAcSyZiP1JmLFnqE6dKrWd4sI5QS xwdeQJIynlOJao6GDPtsClsw3dqqANiys6RUWoPOJ2SvVhHDGABGjJ65ziCbyZ8aiPnMn5SOVUM 19YUl+OwUAc3gnQPJqjzZvahVzO0EJrENjp9GD0dDYlx2C6PROBDmmlIhlQAo9gtHsyU= X-Gm-Gg: ASbGncuWDQXd0qkEPsEaLktZIx/N/q8k6WgBAf59xJgieZLQkWl8rUkmzIQJGcwyvDo FoJid6Ri2VVTzvukyw6Ui3SJnjPSnkgK/myo2+iZ145OTQOql9MCz6UF3zZpbQ7RwwivxOpUqus n3QbZ+kOMuskPBta4GCFrhc6ZqDss1o9ZmZrOhV9Sj+nO1h9taqx5d5L9iqWf2CkBkxSo9Uhi6p DfVLIuRLiKhb7OPiMBuz6Q7jwyxzAf85Uy5IgALI3hZFtCiY3jjqDEGe8graVr2FtGFq2xoKAiU Ev1XI/UvHd/Q7GAnuRrKtHzDgadeA2p+cg7sS7D5cOmYrZHvnzUHVLbiRLdTwO/75g4SbIfRyO7 jv8eQ0n7GQIugMll2qrVanagO/fGjGqzlcJ5OqHPm X-Received: by 2002:a05:6a20:19a2:b0:33f:df99:11d6 with SMTP id adf61e73a8af0-3637db29755mr8355481637.10.1764224786320; Wed, 26 Nov 2025 22:26:26 -0800 (PST) X-Google-Smtp-Source: AGHT+IE2U8pgYyv6GZs6z45zcClYAJnelJyY70thdkG1EnwouwQ2XTtUci8EGM2vHF32igx/AajgEA== X-Received: by 2002:a05:6a20:19a2:b0:33f:df99:11d6 with SMTP id adf61e73a8af0-3637db29755mr8355460637.10.1764224785788; Wed, 26 Nov 2025 22:26:25 -0800 (PST) Received: from [10.206.107.125] ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-be4fbb0094dsm778971a12.10.2025.11.26.22.26.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 26 Nov 2025 22:26:25 -0800 (PST) Message-ID: Date: Thu, 27 Nov 2025 11:56:19 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 1/3] arm64: dts: qcom: sdm630/660: Add CDSP-related nodes To: Nickolay Goppen , Dmitry Baryshkov Cc: Konrad Dybcio , Srinivas Kandagatla , Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, linux@mainlining.org, Chenna Kesava Raju , Bharath Kumar References: <83c3aea5-764e-4e60-8b16-67b474f19357@oss.qualcomm.com> <80836b8f-16a8-4520-ad11-5ca0abb3403e@oss.qualcomm.com> <99c22e73-797c-4a30-92ba-bc3bd8cf70f0@oss.qualcomm.com> <0b06f744-b695-43d9-8da3-4424e2b53a5e@oss.qualcomm.com> <24221ce7-24e4-4eaa-8681-ed9b4b9f2d6e@oss.qualcomm.com> <2h222ejvc37cldeno7e4qom5tnvdblqn2zypuquvadbcu7d3pr@765qomrwfvwl> <515191cf-a8b8-4487-989b-4c1736a67b2c@mainlining.org> Content-Language: en-US From: Ekansh Gupta In-Reply-To: <515191cf-a8b8-4487-989b-4c1736a67b2c@mainlining.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Authority-Analysis: v=2.4 cv=E+XAZKdl c=1 sm=1 tr=0 ts=6927ef13 cx=c_pps a=WW5sKcV1LcKqjgzy2JUPuA==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=IkcTkHD0fZMA:10 a=6UeiqGixMTsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=VwQbUJbxAAAA:8 a=D19gQVrFAAAA:8 a=OuZLqq7tAAAA:8 a=m0NxkttUS1RG61Hf8JMA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=OpyuDcXvxspvyRM73sMx:22 a=W4TVW4IDbPiebHqcZpNg:22 a=AKGiAy9iJ-JzxKVHQNES:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMTI3MDA0OCBTYWx0ZWRfX0IEzOQs/NAbo Yd4ze9D1zZYRzX6AOY/F6JZc0ct79vuYQXVWw94n3nwLC6fPHtrVedoPnA2epJ3p9mGOIb5xX6G tz4DnafJNj80yS7HBbBD4NSYFK1/2Hew/1g1Qh0xLMzyWEO6Rgg5X2nmAmo4xaTxwfSN8hu8fFg WovaE2YZvHiOeEG5gQBcQVRPYTkVeNWD+8E+/UAp9WIKCGuVOtdFHSGCbP9nXRa8k6HDUTtZTXm zOm9ZYtqNScbAEbUu8z4WOvnhd/xxGrbIqr4NJR6pF9jlx68SEcVOVP1kqNK+7suqQl028JDH/h wtxXgUHtWst8ouS+yCawu5RHwiyMoyoXeg/0mtF2C8p0Du2W1jW+sn7+1UJ/Br7tUM9/Z/9rWJ+ Mbmq5hqU4SPw6CaFGTgRcoBn8Vy3xA== X-Proofpoint-ORIG-GUID: bhecHb23sx0zIqBUiU1fBYsXwLBi8d0t X-Proofpoint-GUID: bhecHb23sx0zIqBUiU1fBYsXwLBi8d0t X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2025-11-25_02,2025-11-26_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 lowpriorityscore=0 priorityscore=1501 impostorscore=0 spamscore=0 clxscore=1015 phishscore=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-2510240001 definitions=main-2511270048 On 11/26/2025 7:30 PM, Nickolay Goppen wrote: > > 21.11.2025 15:09, Dmitry Baryshkov пишет: >> On Fri, Nov 21, 2025 at 01:41:21PM +0530, Ekansh Gupta wrote: >>> >>> On 11/20/2025 5:17 PM, Konrad Dybcio wrote: >>>> On 11/20/25 11:54 AM, Ekansh Gupta wrote: >>>>> On 11/20/2025 1:27 PM, Nickolay Goppen wrote: >>>>>> 20.11.2025 07:55, Ekansh Gupta пишет: >>>>>>> On 11/20/2025 1:58 AM, Srinivas Kandagatla wrote: >>>>>>>> On 11/12/25 1:52 PM, Konrad Dybcio wrote: >>>>>>>>> On 11/10/25 6:41 PM, Srinivas Kandagatla wrote: >>>>>>>>>> On 11/3/25 12:52 PM, Konrad Dybcio wrote: >>>>>>>>>>> On 10/31/25 12:30 PM, Nickolay Goppen wrote: >>>>>>>>>>>> 24.10.2025 16:58, Nickolay Goppen пишет: >>>>>>>>>>>>> 24.10.2025 11:28, Konrad Dybcio пишет: >>>>>>>>>>>>>> On 10/23/25 9:51 PM, Nickolay Goppen wrote: >>>>>>>>>>>>>>> In order to enable CDSP support for SDM660 SoC: >>>>>>>>>>>>>>>     * add shared memory p2p nodes for CDSP >>>>>>>>>>>>>>>     * add CDSP-specific smmu node >>>>>>>>>>>>>>>     * add CDSP peripheral image loader node >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Memory region for CDSP in SDM660 occupies the same spot as >>>>>>>>>>>>>>> TZ buffer mem defined in sdm630.dtsi (which does not have CDSP). >>>>>>>>>>>>>>> In sdm660.dtsi replace buffer_mem inherited from SDM630 with >>>>>>>>>>>>>>> cdsp_region, which is also larger in size. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> SDM636 also doesn't have CDSP, so remove inherited from sdm660.dtsi >>>>>>>>>>>>>>> related nodes and add buffer_mem back. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Signed-off-by: Nickolay Goppen >>>>>>>>>>>>>>> --- >>>>>>>>>>>>>> [...] >>>>>>>>>>>>>> >>>>>>>>>>>>>>> +            label = "turing"; >>>>>>>>>>>>>> "cdsp" >>>>>>>>>>>>> Ok, I'll change this in the next revision. >>>>>>>>>>>>>>> +            mboxes = <&apcs_glb 29>; >>>>>>>>>>>>>>> +            qcom,remote-pid = <5>; >>>>>>>>>>>>>>> + >>>>>>>>>>>>>>> +            fastrpc { >>>>>>>>>>>>>>> +                compatible = "qcom,fastrpc"; >>>>>>>>>>>>>>> +                qcom,glink-channels = "fastrpcglink-apps-dsp"; >>>>>>>>>>>>>>> +                label = "cdsp"; >>>>>>>>>>>>>>> +                qcom,non-secure-domain; >>>>>>>>>>>>>> This shouldn't matter, both a secure and a non-secure device is >>>>>>>>>>>>>> created for CDSP >>>>>>>>>>>>> I've added this property, because it is used in other SoC's, such as SDM845 and SM6115 for both ADSP and CDSP >>>>>>>>>>>> Is this property not neccessary anymore? >>>>>>>>>>> +Srini? >>>>>>>>>> That is true, we do not require this for CDSP, as CDSP allows both >>>>>>>>>> unsigned and signed loading, we create both secured and non-secure node >>>>>>>>>> by default. May be we can provide that clarity in yaml bindings so that >>>>>>>>>> it gets caught during dtb checks. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> However in ADSP case, we only support singed modules, due to historical >>>>>>>>>> reasons how this driver evolved over years, we have this flag to allow >>>>>>>>>> compatiblity for such users. >>>>>>>>> Does that mean that we can only load signed modules on the ADSP, but >>>>>>>>> the driver behavior was previously such that unsigned modules were >>>>>>>>> allowed (which was presumably fine on devboards, but not on fused >>>>>>>>> devices)? >>>>>>>> Yes, its true that we allowed full access to adsp device nodes when we >>>>>>>> first started upstreaming fastrpc driver. >>>>>>>> >>>>>>>> irrespective of the board only signed modules are supported on the ADSP. >>>>>>>> I think there was one version of SoC i think 8016 or some older one >>>>>>>> which had adsp with hvx which can load unsigned modules for compute >>>>>>>> usecase only. >>>>>>>> >>>>>>>> I have added @Ekansh for more clarity. >>>>>>>> >>>>>>>> --srini >>>>>>> For all the available platforms, ADSP supports only signed modules. Unsigned >>>>>>> modules(as well as signed) are supported by CDSP and GDSP subsystems. >>>>>>> >>>>>>> qcom,non-secure-domain property marks the corresponding DSP as non-secure DSP. >>>>>>> The implications of adding this property would be the following: >>>>>>> on ADSP, SDSP, MDSP: >>>>>>> - Only non-secure device node(/dev/fastrpc-Xdsp) is created. >>>>>>> - Non-secure device node can be used for signed DSP PD offload. >>>>>>> >>>>>>> on CDSP, GDSP: >>>>>>> - Both secure(/dev/fastrpc-Xdsp-secure) and non-secure(/dev/fastrpc-Xdsp) devices >>>>>>>     are created, regardless of this property. >>>>>>> - Both the nodes can be used for signed and unsigned DSP PD offload. >>>>>>> >>>>>>> Note: If the property is not added for CDSP/GDSP, only secure device node can >>>>>>> be used for signed PD offload, if non-secure device is used, the request gets >>>>>>> rejected[1]. >>>>>>> >>>>>>> [1] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/drivers/misc/fastrpc.c#n1245 >>>>>>> >>>>>>> //Ekansh >>>>>> Does this mean that the qcom,non-secure-domain property should be dropped from both nodes? >>>>> I checked again and found that unsigned module support for CDSP is >>>>> not available on this platform. Given this, the safest approach would >>>>> be to add the property for both ADSP and CDSP, ensuring that all >>>>> created device nodes can be used for signed PD offload. I can provide >>>> The property allows *unsigned* PD offload though >>> I don't think I can directly relate this property to unsigned PD offload. This is just >>> defining what type of device node will be created and whether the channel is secure >>> or not. There is a possibility of making unsigned PD request(on CDSP/GDSP) irrespective >>> of whether this property is added or not. If DSP does not support unsigned offload, it >>> should return failures for such requests. >> Which part of the hardware and/or firmware interface does it define? If >> it simply declared Linux behaviour, it is incorrect and probably should >> be dropped. >> > When I've removed the qcom,non-secure-domain property from cdsp and tried to run hexagonrpcd via this command: > > sudo -u fastrpc hexagonrpcd -f /dev/fastrpc-cdsp  -R /usr/share/qcom/sdm660/Xiaomi/clover/ -d cdsp -c /usr/share/qcom/sdm660/Xiaomi/clover/dsp/cdsp/fastrpc_shell_3 > > It raised the following error: > > qcom,fastrpc 1a300000.remoteproc:glink-edge.fastrpcglink-apps-dsp.-1.-1: Error: Untrusted application trying to offload to signed PD  This is expected. With the property absent, Signed offload is only allowed with /dev/fastrpc-cdsp-secure. > > > >>>>> a more definitive recommendation once I know the specific use cases >>>>> you plan to run. >>>> Why would the usecase affect this? >>> I'm saying this as per past discussions where some application was relying on non-secure >>> device node on some old platform(on postmarketOS)[1] and having this property in place. >>> So if similar usecase is being enabled here, the property might be required[1]. >> DT files are not usecase-based. >> >>> [1] https://lkml.org/lkml/2024/8/15/117 >