From nobody Sun Apr 12 23:24:03 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.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 F417437BE85 for ; Thu, 9 Apr 2026 08:52:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724756; cv=none; b=nv6B+j2YNvMZ+ChOY9jdAshrgykK1fsFLVQU9hRghtLBWCimIpG4mir1csOwp0/sqbbUoelj5vjb+eKmC4suQ79zPt8SksApkXuKdSc9t38hzrZhRmtS8t/dmMXF48osbC7XzhlS41kOLkEdooyQeXREVHHbPtqkW3ovoNv8/Hs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724756; c=relaxed/simple; bh=/AyXfvDgL6xS/1UvCVX17NbhNe6WnF28CEFcPHn4+7w=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=UNW2LAIhXTRPgHspEpQM4dLT2xqwBBDV3VI8sW4wEPsruWLZCjmR7QW0c8bA5Jlrb8TEbwWojeLj0uc3tWaCTu/2nCnuXh3dF5Oj8AwOJnHq30atHo8WjAqiMlRDbmkNpN95LOGlqqurSvSonDzH+hSjnAZyh01rKOsO8/FXllU= 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=B4B5RlPK; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=KvcGtD8I; arc=none smtp.client-ip=205.220.168.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="B4B5RlPK"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="KvcGtD8I" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6397V76G3781296 for ; Thu, 9 Apr 2026 08:52:34 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= 7T5qiIsx+2dwMKk5877pZ1wxVPnaaufjkpooV0Vvk8M=; b=B4B5RlPKTTgJriLq l1ChMPjnmx536My1oGDjauUCeHUHDiLpMZcHS4dSDxW5g96j/ScFsqvtkefCG4Kg Etvy3P4cO3/qRH7NETllHgnSEDk2oNt/KJj6N9byzHOkKx3R/+JsU7bayroPCtQu OTf8y2cIivHphYWuchNtYceFd/M/nSpYc+E0OKJciYcgOGUPkxPFr6D0BDLm09SD nMKyFkHpqIPH8miHChrwTYXv7tRrDYbvt0MBD+16w4VyCk40bDXDQgr8ssz/DdoQ U54mUqdi0w3gGI9wFhT/ypYBmWTTBS6Ez10ikgaq/D16+HcKuTuSHjSU+lNRjnmS H9xbMQ== Received: from mail-dy1-f198.google.com (mail-dy1-f198.google.com [74.125.82.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ddt6yb81p-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 09 Apr 2026 08:52:34 +0000 (GMT) Received: by mail-dy1-f198.google.com with SMTP id 5a478bee46e88-2cc9118dc2eso1433324eec.0 for ; Thu, 09 Apr 2026 01:52:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775724754; x=1776329554; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=7T5qiIsx+2dwMKk5877pZ1wxVPnaaufjkpooV0Vvk8M=; b=KvcGtD8IhbjbmxaAJ/L4XVtTGtrerQb7BCIUHDf9+slUGrWUlAB9oe+iWFW7A1UtVN CuTMTSorqlYIDTEJ9277Y1wboLpcWcfqdMgcHtOYn16JGH2zdeyICqOeYmAmkqPwuHoh JvhtR9gIUvncwFwUFwez67RDYOOzY3pXoAETNPd+BusKh+QdF8tjBNgzqQytWLhZQAgw B9CI1hA+Ov6KTKRKHkXiZP30fNE/ELsmtwUbglJX9veMrsd0S6/SjMUraKsu/DlgYc/8 YAXHq7y2YH5IGbzbVPzg+S3CGdQqW7qGWapBBoo6+5l8YatigXdGwOJ/m/2Xnwg7tR6I sJBA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775724754; x=1776329554; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=7T5qiIsx+2dwMKk5877pZ1wxVPnaaufjkpooV0Vvk8M=; b=M/YKzHvbyJgMD7dWR5EkCPNdPYAZsv3Nv2yqLE7SA2K1wph9+9t28eh+fuv8ZiMEvP azFFFpmJiJuBMB+JGk8DteOKq5gJrUFOlhVfWgcFdpcSBdZv1lHNlp3tXOoTVHVPUrSF 88FYIbRQtctRfSdb3LFg9b8y0ui3Z9kXUiIkvRKx/q7WjuiOzyj4SvapFKECTvAFPpHC lz/H/BQa+eIRxaE1NjqTbDiDOQsvXms3n1TNlCRoXnTVLgnwwUN2zL+mzAds3DfbZ0rI l9alhYhHAMCZSz2LyPGutFgAlZQPLQBXaCdM8hop8xOqMyz3vZk4DszvkuHDcQgVG7i/ 1R+Q== X-Forwarded-Encrypted: i=1; AJvYcCU3h7Xs10jPDMAzTTC64cX1rLoKZm318D4jzrkSUHhP5RzcstcAyrg4Sk29djRl2pfA999Hm1+YmtAiKR4=@vger.kernel.org X-Gm-Message-State: AOJu0YzRAkJKv1KrHOHYQ/7ckLBaSn9RRTya1lF3Wwe0ySvQpaViUqer OtvPECyLri1YV+Vag03+bNQ73eOgtY1ycmwzAB+5knhLUqUUcMvV816PCTWKH6ru/MRLOctqoIq by/h0V4RQG4QowGE7IMDjR64gwFWOsZxFMh9AwgfWdxeHRusanrpGS6eMRhy1QTfe5/U= X-Gm-Gg: AeBDiesQ/sXQofoMzQ+PoNqKwAS8yvws6IFVT4kcEkt4Dr8AbTITig4SrtwUf9VSL8r BS/TTEsntG2x7QOVB6c4bIykpEAYH8bkXjg2NrGRR698X7xZvkJ/r5sJjep0/qpo5rCfAb8TQBl jLTAKdJLf1mJlEKv3hwPZ1OHDDoaXgLURPj25PpakKYcXmfBssjZr1dryfEYmweer15JDk98jgh 0Otvta5VzYHjryH9C4SvqxvsCsim6+C+hWUxbWU49tK6ZIRSe2aqjZg2VRAcWUvlpC9YCvUaWKm rTTQPern/f5DSgicq3n/Tvoin1Bzn7sDOqZ5dE+I0FssuMdAgS6iUwt+TnFQBoBvIOetKqdoIaf s4/vaa8AuO8AnmGh5S9ckgoX2rUkyQv1j4NIG/Yv+ZXnEAxQzyzK0tdfMdh3yiBp2IPZ/9yTJ X-Received: by 2002:a05:7300:fd16:b0:2c4:d01f:6ef7 with SMTP id 5a478bee46e88-2cbfa4c41f2mr14169762eec.13.1775724753668; Thu, 09 Apr 2026 01:52:33 -0700 (PDT) X-Received: by 2002:a05:7300:fd16:b0:2c4:d01f:6ef7 with SMTP id 5a478bee46e88-2cbfa4c41f2mr14169732eec.13.1775724752976; Thu, 09 Apr 2026 01:52:32 -0700 (PDT) Received: from hu-jingyw-lv.qualcomm.com (Global_NAT1.qualcomm.com. [129.46.96.20]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2d460c8e9a5sm2312889eec.17.2026.04.09.01.52.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 01:52:32 -0700 (PDT) From: Jingyi Wang Date: Thu, 09 Apr 2026 01:52:24 -0700 Subject: [PATCH v5 1/5] dt-bindings: remoteproc: qcom: cleanup qcom,adsp.yaml 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 Message-Id: <20260409-knp-soccp-v5-1-805a492124da@oss.qualcomm.com> References: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> In-Reply-To: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Luca Weiss , Bartosz Golaszewski , Konrad Dybcio Cc: aiqun.yu@oss.qualcomm.com, tingwei.zhang@oss.qualcomm.com, trilok.soni@oss.qualcomm.com, yijie.yang@oss.qualcomm.com, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jingyi Wang , Krzysztof Kozlowski X-Mailer: b4 0.15-dev-3d134 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775724750; l=2807; i=jingyi.wang@oss.qualcomm.com; s=20250911; h=from:subject:message-id; bh=/AyXfvDgL6xS/1UvCVX17NbhNe6WnF28CEFcPHn4+7w=; b=Pb+jPWKDcC45WGJHg9WVboFQh65d7ITa284WAAQJcSvKRDijifM+KPUsCIaFSCxdiZlFTAH6p GxqElbILrjPCrYtiVfKgxpJwbIwFOXvyqgr+u07O8ip9UG7nn2N43P3 X-Developer-Key: i=jingyi.wang@oss.qualcomm.com; a=ed25519; pk=PSoHZ6KbUss3IW8FPRVMHMK0Jkkr/jV347mBYJO3iLo= X-Proofpoint-ORIG-GUID: WU1kjelxcdanC01-hvV9i-amUB7ta-L9 X-Proofpoint-GUID: WU1kjelxcdanC01-hvV9i-amUB7ta-L9 X-Authority-Analysis: v=2.4 cv=R9sz39RX c=1 sm=1 tr=0 ts=69d768d2 cx=c_pps a=wEP8DlPgTf/vqF+yE6f9lg==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=Um2Pa8k9VHT-vaBCBUpS:22 a=EUspDBNiAAAA:8 a=VspIq9AKIDY_7iLw7w4A:9 a=QEXdDO2ut3YA:10 a=bBxd6f-gb0O0v-kibOvt:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA5MDA3NyBTYWx0ZWRfX6hiwjGhazmkx M9vz4L9/ZZ/GhxBM5+AODm8N/O0vxBa1dnHHPd8/4FG4t711hUV/jLOgtC/DrrTGd5AITr+N+Ip 4PTBhO1/uaUNamNLbDWgtLkINMAiJYZo5K2hnkisyQwnxexYZay6uhQjT7JKJDlQHjBH+3A+9bY mTzXys4S40/qMOHd1Hk9TGB3klrpK4Uy+YzzRQe2gw4KoBS44kj4ti8eOEaLSlWyqx1B+C/BQ6s 2vwnqq1tuxYro2Z+4Fn8VPMpSs9jwB2m7QQHPxvGDDfNRXxDmWqs6qns9qwU7Fv6I2l8vflOlO4 fDPfkm/Euw2YVn8Bouml4v9tgwHhWDuiPI1yuAB22UlljgV9IaTJc6As5tTrSTj9tWWeDGzGnsG d+l1BU57UA+QkFCNgAJ6YOX49JLneaN6+wNrQxFsSfMXs0xav+19UrB0GnnTqfSkbwkDtrpLdPE R1CXtjpGQgOlpD1VaFg== 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-09_02,2026-04-08_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 clxscore=1015 impostorscore=0 lowpriorityscore=0 phishscore=0 spamscore=0 priorityscore=1501 suspectscore=0 adultscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604090077 Items in qcom,adsp.yaml has common clock and interrupt properties, move these out of the allOf section to avoid list the compatible repeatly. Reviewed-by: Krzysztof Kozlowski Signed-off-by: Jingyi Wang --- .../devicetree/bindings/remoteproc/qcom,adsp.yaml | 64 +++++-------------= ---- 1 file changed, 14 insertions(+), 50 deletions(-) diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/= Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml index 16a245fe2738..a270834605da 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml @@ -32,6 +32,14 @@ properties: reg: maxItems: 1 =20 + clocks: + items: + - description: XO clock + + clock-names: + items: + - const: xo + cx-supply: true =20 px-supply: @@ -49,6 +57,12 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + maxItems: 5 + + interrupt-names: + maxItems: 5 + required: - compatible - memory-region @@ -57,56 +71,6 @@ unevaluatedProperties: false =20 allOf: - $ref: /schemas/remoteproc/qcom,pas-common.yaml# - - if: - properties: - compatible: - contains: - enum: - - qcom,msm8226-adsp-pil - - qcom,msm8953-adsp-pil - - qcom,msm8974-adsp-pil - - qcom,msm8996-adsp-pil - - qcom,msm8996-slpi-pil - - qcom,msm8998-adsp-pas - - qcom,msm8998-slpi-pas - - qcom,sdm660-adsp-pas - - qcom,sdm660-cdsp-pas - - qcom,sdm845-adsp-pas - - qcom,sdm845-cdsp-pas - - qcom,sdm845-slpi-pas - then: - properties: - clocks: - items: - - description: XO clock - clock-names: - items: - - const: xo - - - if: - properties: - compatible: - contains: - enum: - - qcom,msm8226-adsp-pil - - qcom,msm8953-adsp-pil - - qcom,msm8974-adsp-pil - - qcom,msm8996-adsp-pil - - qcom,msm8996-slpi-pil - - qcom,msm8998-adsp-pas - - qcom,msm8998-slpi-pas - - qcom,sdm660-adsp-pas - - qcom,sdm660-cdsp-pas - - qcom,sdm845-adsp-pas - - qcom,sdm845-cdsp-pas - - qcom,sdm845-slpi-pas - then: - properties: - interrupts: - maxItems: 5 - interrupt-names: - maxItems: 5 - - if: properties: compatible: --=20 2.34.1 From nobody Sun Apr 12 23:24:03 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 A304B33030F for ; Thu, 9 Apr 2026 08:52:37 +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=1775724759; cv=none; b=doCo8GoIjVvNgCbqywCPxMOFe632luyZ378n3wTOr8gLHNfTdu+7ff7VHqpxAcPeG8xJwYkVaap+B1fXXiBg+2K+5WEfdGcfrfeY5ik4PjmoZURtw8mhVXP/acAJbmGbXYbuzIbZWBbMQGVxdCCxx1IjAybydlHaNZj798BidWA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724759; c=relaxed/simple; bh=3Ji3C8JJe4/d8U4AgLvbrOfT8BUcflDhcma8crXqLPc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Un1xoh9iMyvntEpLfUAkSi3WIS5XVEHatnMke6MNVa2Mk0XpDL0UoS8FVp42cjn3KYQdcVvchAOP4SyYMGgZWGHH4tfcAtRSYtOWrIV1zau+qpnUqcE4+wqWR5FW0XggNl5S3xBzmU2oinRPWY6fYzpLULSoJ0ENup8cFrBBM9U= 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=Vkd1iQyS; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=YrcdBRSN; 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="Vkd1iQyS"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="YrcdBRSN" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6397wnHI2845168 for ; Thu, 9 Apr 2026 08:52:36 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= 4MBaZPmaMZaO9OsWhxCQha58YBZu16ccbeCjjhHuqYg=; b=Vkd1iQySoJUnbtow ltSfwWWASw0jq/Q5u+VowS/52hwV5hWC+U1ceG8dZQdbLIwRGBDK2ICy8w5JI7iV 0B42syVO0UxjLJA2kX0z0pCU8jR4vFywDgitAvCp875WbIYvdfqO5w4FFcoz1fXG HirhRXXSp81Y+cBQdOOezA4ERgM9KrqLkEdpYx/J8cbn3KmkI0dy8BxvykS3HWRn sEds82vMrdAG/nvGEv6EQ8OAjCbQdhzBpqxmrMEJqdUL3aTnqbFIKhcatEvCHNlT VsHlVNYYP6KCymNZWoqkzmJrqpiifFX284nfwZWeQ5ND77y518brMKyI1NsIZ8Cv niQT5Q== Received: from mail-dl1-f70.google.com (mail-dl1-f70.google.com [74.125.82.70]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ddt7hk8bb-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 09 Apr 2026 08:52:36 +0000 (GMT) Received: by mail-dl1-f70.google.com with SMTP id a92af1059eb24-12c21dbc9c1so2415825c88.0 for ; Thu, 09 Apr 2026 01:52:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775724756; x=1776329556; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=4MBaZPmaMZaO9OsWhxCQha58YBZu16ccbeCjjhHuqYg=; b=YrcdBRSNMZ/MmkzEqO6F3oGrFALheVJLhM4ap0i6Bt2WCXqZV1nK0OOOMekUwisWMb dC/g3zMIUNUwCF3NA4R8nB0YzI6CHJYnAUqkrUa8arnisb4ONrt/XNR9pNDSZU/yne5S jd5uC9h6gLlO3o0rdtMuZh83R9aUr5Dism+lPBA38G8xvYdD80T6KbBUfvi83V+vlLrL BUtaqKjZmATGbomZ84ptt167QYC1oN6qXOz+UM9psRLst8nbOwSzL0C5Vr1+rQtGd0Y9 hvvUEBRm2q0i2sjBdiqF65pAQ1bSrBuW10AxjEU8IJNrcJsRLWDwvJC72rb0yA/2ox81 nTAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775724756; x=1776329556; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=4MBaZPmaMZaO9OsWhxCQha58YBZu16ccbeCjjhHuqYg=; b=epJjTOnsP6a3biB6HPxP3Wi8WFnuRs0uKlz2gcSuO7nOx1golKDXr3sH6y+MqaphS6 oQ9jDbY6fztuB5nVl23sGvUXXySVAZU2pChIXiFAaJ6qOXgc1T/xTul55F51gX3cUBQd ZXPccfUTgsMSmxkM/2t1aUxkKSuxVxMmhds/Fe2IDxJ00SP1XwFnFdNkkzQyMwAyLVZw EAgX7MkQpJbZi5hJqD/7rd//kyCdsTBoZxPUf/4IReAmXSVsrbGfTRl300yAuE8H5UQd dC7KEROooL38v/UoJauRNGZ8P9cD+HUiAV1Y28EEF66xLXeC/WZfauwSXtkqeTZisC+U NanA== X-Forwarded-Encrypted: i=1; AJvYcCV7D1zi6YcAEvEp5NutFnqgtlzhbW/uzJVf7Y1LANNflgG7vcV3gjP5/BKqvXTnTj/MMDxjp2dle0+z3I8=@vger.kernel.org X-Gm-Message-State: AOJu0YwGaF/YJkxCExsqNIKtQIXJwhJk68mu5ekw+dRXRfc8UJYYjpNn NsfxvaWbV1JejmavWr04lDoAp0bI+jwjwrKsI9w9s5CyKBXb+jA/f/QkNdE8ZZsZ6AhkI5Zf49y 9NKgUkJdpZJgrIfEkR17446PQr4o1KtOEJqC3UGw48UO4ogZChTX7Qn+sCd4FlGv/GTw= X-Gm-Gg: AeBDievPV3mMkrWaPzv/I4tHBqRzc8zhrrsBleR4oJQdiNY5howYk2BP1iESr/dr3fX bIE1e3e9aqy20mq6WlpUZSA3WQKg2MZ7pbqPXrJTLq2FcYxyeL+uEQ1gLIc0SQvcWI8Sri4Bcoj YrmlwuJUF+sgkFUySIAjWBELv4SpxMtQZ+mlH1OSmqE4d+IOv2262UUBvCTP+WqniwXL9kjnM2D Fl28DMakrDSGrky9oJ2C5CWGFlBMj/7flxdJf1ItmTpIx7WlRcsIigG14NtUJgN8E1QKsrGTn85 1hTIE4pECg8fjZ7UL0ZA3fbX/qgL6gpdgFXEQlc72ZiNR9f+fTPSQ1COTeImhmf9Y6ENeLdwfmT G/H+pNmH8CYIbwBgte3Ptc2hsDa6rtVUwjLR1AcqcbiPflOMGRbGk64GVc2x6DlcTj4czpYrn X-Received: by 2002:a05:7022:418f:b0:11b:88a7:e1ac with SMTP id a92af1059eb24-12bfb745142mr12226171c88.19.1775724755446; Thu, 09 Apr 2026 01:52:35 -0700 (PDT) X-Received: by 2002:a05:7022:418f:b0:11b:88a7:e1ac with SMTP id a92af1059eb24-12bfb745142mr12226150c88.19.1775724754802; Thu, 09 Apr 2026 01:52:34 -0700 (PDT) Received: from hu-jingyw-lv.qualcomm.com (Global_NAT1.qualcomm.com. [129.46.96.20]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2d460c8e9a5sm2312889eec.17.2026.04.09.01.52.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 01:52:34 -0700 (PDT) From: Jingyi Wang Date: Thu, 09 Apr 2026 01:52:25 -0700 Subject: [PATCH v5 2/5] dt-bindings: remoteproc: qcom: move interrupts and interrupt-names list out of pas-common 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 Message-Id: <20260409-knp-soccp-v5-2-805a492124da@oss.qualcomm.com> References: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> In-Reply-To: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Luca Weiss , Bartosz Golaszewski , Konrad Dybcio Cc: aiqun.yu@oss.qualcomm.com, tingwei.zhang@oss.qualcomm.com, trilok.soni@oss.qualcomm.com, yijie.yang@oss.qualcomm.com, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jingyi Wang , Krzysztof Kozlowski X-Mailer: b4 0.15-dev-3d134 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775724750; l=15056; i=jingyi.wang@oss.qualcomm.com; s=20250911; h=from:subject:message-id; bh=3Ji3C8JJe4/d8U4AgLvbrOfT8BUcflDhcma8crXqLPc=; b=9IsmcGNgagRdUKndKzgxjEL9d2xcDMewyTZarTo3zcFN3u3Z0oVGsQlJcUlfEPleD+nSf1R7r cpCwIBQ7k5eCbzCsIA9dF9cE6f8V4BL+I6QNm6vRv1LHBSr0WUZAkUx X-Developer-Key: i=jingyi.wang@oss.qualcomm.com; a=ed25519; pk=PSoHZ6KbUss3IW8FPRVMHMK0Jkkr/jV347mBYJO3iLo= X-Authority-Analysis: v=2.4 cv=O5IJeh9W c=1 sm=1 tr=0 ts=69d768d4 cx=c_pps a=SvEPeNj+VMjHSW//kvnxuw==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=4MiHK05HUdkkAtNoTgEA:9 a=QEXdDO2ut3YA:10 a=Kq8ClHjjuc5pcCNDwlU0:22 X-Proofpoint-ORIG-GUID: xPEvGl1Oh6z43tLPJnmFhXsNadEkfEwj X-Proofpoint-GUID: xPEvGl1Oh6z43tLPJnmFhXsNadEkfEwj X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA5MDA3NiBTYWx0ZWRfX1lNdtuPOfGKt zEL8jORLI8G1pxy0Nuw7SBoV/VHHnK8VypFKHQ0LHSUPPpoBk8+3zMnjmE1SjATkqeCcXULKsNC t3MoszvAS6ezDIamJuIaEfCAGkP9ktb3C5umVu8lXrQxDwLQXmtS+gXjJvcoXG4jFSIa/3P5z03 zoJDlvkOBtYKrc2xO3vTC6tKFFjcVjAVNaHXRVth6goHl+MXhlC07GFOSX42mL1Xnhheu+8UuCi Fe0MCULr7jE/Q+ilSB9qt6TDI4oYO9E+RR1+0KP9eDnfD/1cthpd+pGAJmTa5l0kQjdPVZAiPKH 8iguW5pDllj9cyLj6eukN5BVLmiCXlW44eCkoZZz02YfMjvB+GenJOs6zqSN4Mw7zXSvpOpfUNT UxN5R2RnbtqaNDUVD3L76oNDQU3zi2PnFSTqn1d9Cdyjtbny7REdlK24qmIkDaCbZfEOQu6WGs8 q9k5+MKUvCU5uH8LfYw== 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-09_02,2026-04-08_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 malwarescore=0 spamscore=0 priorityscore=1501 impostorscore=0 lowpriorityscore=0 suspectscore=0 clxscore=1015 bulkscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604090076 Move interrupts and interrupt-names list out of pas-common since they will be redefined differently for Kaanapali SoCCP. Reviewed-by: Krzysztof Kozlowski Signed-off-by: Jingyi Wang --- .../devicetree/bindings/remoteproc/qcom,adsp.yaml | 14 ++++++++++++-- .../bindings/remoteproc/qcom,milos-pas.yaml | 18 ++++++++++++++--= -- .../bindings/remoteproc/qcom,pas-common.yaml | 16 ++-------------- .../bindings/remoteproc/qcom,qcs404-pas.yaml | 14 ++++++++++++-- .../bindings/remoteproc/qcom,sa8775p-pas.yaml | 14 ++++++++++++-- .../bindings/remoteproc/qcom,sc7180-pas.yaml | 20 ++++++++++++++++= ++++ .../bindings/remoteproc/qcom,sc8280xp-pas.yaml | 20 ++++++++++++++++= ++++ .../bindings/remoteproc/qcom,sdx55-pas.yaml | 16 ++++++++++++++-- .../bindings/remoteproc/qcom,sm6115-pas.yaml | 20 ++++++++++++++++= ++++ .../bindings/remoteproc/qcom,sm6350-pas.yaml | 20 ++++++++++++++++= ++++ .../bindings/remoteproc/qcom,sm6375-pas.yaml | 20 ++++++++++++++++= ++++ .../bindings/remoteproc/qcom,sm8150-pas.yaml | 20 ++++++++++++++++= ++++ .../bindings/remoteproc/qcom,sm8350-pas.yaml | 20 ++++++++++++++++= ++++ .../bindings/remoteproc/qcom,sm8550-pas.yaml | 20 ++++++++++++++++= ++++ 14 files changed, 226 insertions(+), 26 deletions(-) diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/= Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml index a270834605da..16c35e15ee1b 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml @@ -58,10 +58,20 @@ properties: description: Firmware name for the Hexagon core =20 interrupts: - maxItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt =20 interrupt-names: - maxItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack =20 required: - compatible diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.ya= ml b/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.yaml index e5cce0d05fc6..d22d50c1e1ea 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.yaml @@ -34,12 +34,22 @@ properties: - const: xo =20 interrupts: - minItems: 6 - maxItems: 6 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt =20 interrupt-names: - minItems: 6 - maxItems: 6 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack =20 qcom,qmp: $ref: /schemas/types.yaml#/definitions/phandle diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml index 68c17bf18987..dc5a9981c12c 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml @@ -26,23 +26,11 @@ properties: =20 interrupts: minItems: 5 - items: - - description: Watchdog interrupt - - description: Fatal interrupt - - description: Ready interrupt - - description: Handover interrupt - - description: Stop acknowledge interrupt - - description: Shutdown acknowledge interrupt + maxItems: 6 =20 interrupt-names: minItems: 5 - items: - - const: wdog - - const: fatal - - const: ready - - const: handover - - const: stop-ack - - const: shutdown-ack + maxItems: 6 =20 iommus: maxItems: 1 diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml index ad45fd00ae34..5854b3d2041d 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml @@ -32,10 +32,20 @@ properties: - const: xo =20 interrupts: - maxItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt =20 interrupt-names: - maxItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack =20 power-domains: false power-domain-names: false diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.= yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.yaml index bcd2bcf96e24..7f287e55896e 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.yaml @@ -59,10 +59,20 @@ properties: - description: Memory region for main Firmware authentication =20 interrupts: - maxItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt =20 interrupt-names: - maxItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack =20 required: - compatible diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml index 66b455d0a8e3..cb0a61fc301d 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml @@ -48,6 +48,26 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas= .yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml index 8227527c1d77..fef9d7c39f3c 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml @@ -45,6 +45,26 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.ya= ml b/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml index 8c4abde74915..2bbd427c6ea4 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml @@ -30,10 +30,22 @@ properties: - const: xo =20 interrupts: - minItems: 6 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt =20 interrupt-names: - minItems: 6 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack =20 power-domains: items: diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.yaml index eeb6a8aafeb9..987fac433fae 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.yaml @@ -51,6 +51,26 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml index c1a3cc308bdb..53ffb1ccd199 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml @@ -45,6 +45,26 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.yaml index 7286b2baa19f..6823a2a8d74e 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.yaml @@ -39,6 +39,26 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + smd-edge: false =20 required: diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml index a8cddf7e2fe1..8a1fae095a3b 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml @@ -61,6 +61,26 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml index 6d09823153fc..4ea7518db537 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml @@ -55,6 +55,26 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml index 1e4db0c9fcf9..74df49b5fbe9 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml @@ -73,6 +73,26 @@ properties: - description: DSM Memory region 2 - description: Memory region for Qlink Logging =20 + interrupts: + minItems: 5 + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Shutdown acknowledge interrupt + + interrupt-names: + minItems: 5 + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: shutdown-ack + required: - compatible - reg --=20 2.34.1 From nobody Sun Apr 12 23:24:03 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 A2C083845AE for ; Thu, 9 Apr 2026 08:52:38 +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=1775724761; cv=none; b=A58WKheSJdu4g9XREdv1yEYnyEZwdgUeqb7N2q28BCactEiNEUMxNd1x3ZDPphj0+Sed3SFs9xyGypGgu8zZUrWG6Lalh8Ynl0C0ilNT4CG5xlOL8ulxxFqkl+JfKy+eFzkhleAUYctkz3bh7qj2mBqVVPR3uPt/VcLJgWMgR5s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724761; c=relaxed/simple; bh=YuroHQl0RaEfqlcbPAw5LHxqeiE2B1J2dL3SPvMEUoA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=EorU1VKzlpC0BYDWWjt/No3OCSxa3wUBAAyFrNnRrUqMoh+03mHCC/dMS18BxQkyspfjo0lYvVKotlJvLozs8WpbEMfCgYVVOdtp5TBs4NLhNVQe2nr3FLQ4pJw58UsgpAmtX7uKTVwTzk/T+kh271AjL9jgphzaOtqOMvQlil4= 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=jRdh7yRB; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=FVsJy2VH; 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="jRdh7yRB"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="FVsJy2VH" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6397CV091072956 for ; Thu, 9 Apr 2026 08:52:37 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= +Yxppoecnv6lUMs3okuA/xmMwVErI7Rlp5d15Pjd5Sk=; b=jRdh7yRBFsgA+FOV /JYKFfkBqZmJ5DGBjuEmtcoSnaMOqIsYXy2T2K/h9wOf4gu1IeDBA0WP6w++mLha EFY/qhXjRdRKkycU2lCkWOJnaW2szAl6+H6jELp39l2d116tfT59+XnVZd/Sgj18 Tct94+v8CMvyl6Op4L1KtKJ6N/qgtueQrNdzh0HejnqyEbzVx/dk9ncDd6YXpPPC ArBRAnxfNBkF60GRLjdBIsqGPmpqj55zSf+WJktwPmVj43TFDqpw0VHi9+0ZI3el m+YDYuBxOZVZeDi+X3d2iTBx+qNSfZOdknZkMUoBS5EaC/VeMBNbbNkpQbcHaY5C ou8mRQ== Received: from mail-dy1-f197.google.com (mail-dy1-f197.google.com [74.125.82.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ddtb3b7d0-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 09 Apr 2026 08:52:37 +0000 (GMT) Received: by mail-dy1-f197.google.com with SMTP id 5a478bee46e88-2c895e7de52so1487190eec.0 for ; Thu, 09 Apr 2026 01:52:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775724757; x=1776329557; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=+Yxppoecnv6lUMs3okuA/xmMwVErI7Rlp5d15Pjd5Sk=; b=FVsJy2VHkcAAnjhrhyGMjQbMaV58q0571QjOWYSeDkq/bUpN7Pf86SKsqxh+6DSZNc oW3iRwwdg+hVisNuW77r4q/VU7JUbPRwnGE6/aRF/FsKVRzCcu7XV7R1cIwtbKjxsODB FzytV3rowyno7P5z8HefQQ/Jn9B76KWlnlbL2yLg9GVK0t57MwEbCCyWtSBkqDx3K3HH xqipRCrDN7fiMCYSJFg7/zwXTzmsfLvK1wJCkqVY59oXeVGv33T2g98KE5xUHDIiYcGP hu33E0YYyaI6sG9zmbDnhdY/NJtHwVwqqsKpYMDY7x7UI9qyTkD9VTYdx3wDlZ0UAjFI BbXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775724757; x=1776329557; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=+Yxppoecnv6lUMs3okuA/xmMwVErI7Rlp5d15Pjd5Sk=; b=hcmYTVAKkYW8rf4Uk5jKIxSZp6dsDXRrLNgvWL8oySq/eQKCRLU9XiN5sZ01GpBThv /K6SrYLbs8s37b/TItF1dHFeBy7/KGmgG8eZKagXJigscmyRuKNXMQzzi5V498c1hMju d01JwoqewuNqddjlql2Nve14i4zxy22f8RnOXd124ZG7Je3kWmFJDbTaqsDcUIXxzw3m IZO4dXVSju7iwGluGehjsZUQbcfVImO+EPwzdqWJeZW6aBVf1dCreLAsDCNg5yn8XCjm AgwzvYS2Ag1STqOlvbrovjc/1qLy22GDmKfOO11xwwmyTSoc7sN8IoO8FWBmOpHDb5h/ b6qw== X-Forwarded-Encrypted: i=1; AJvYcCUaFh0o/Q7Uqs4w8q625WwpnURNZc1xVpUnbaaRjvk/Y/B9YDlYYUeCRgvY7fbFNGOLrCC+qjO63W2u/E0=@vger.kernel.org X-Gm-Message-State: AOJu0YyzqB/Iq5e7GYC5ktYaa+LSP0ypTkuIbT6SbrjVwgtrDAuUmJ3r wvYmkn5lwq4lexjMlQY8I//fmsVwSoLbRxz2uoPwfCcqQ3GhndqgCCc63nX2Jm3K2IeqM7/NASW kJxxC686+2kIzJ+t0vlo9gt+zs55ns0NrdS1wWCH8yCDW3EYNjzILbm9KCZ/PadS2qfo= X-Gm-Gg: AeBDieurT9QchxW6Q+06YoASTm5vqFcrvHUeI8AR4x6YP94cQ6iRCShdmAXPYv+97HR U35aD9AF69+ZbnJ2FqV4Hysww/BOuZnzlFd2LIq54G1tbKuJQA08ZoNCbSRjA7Cx73D6Fm93MO6 E+5lfgtCMZQxinW2zcIidvDxJVgbPjYR/X/mZSKok1vfCfkhYL0ipOffDxOVlvTxXXUXjfIUhDL +8BACxTMankm93C3ohAYDRodYt1q00p5YvvLelyUhv1u7/uJcqjW0xWTbUNbTLoE9HMGxG5mw+7 OyceTyW8D7F+CD07lgQ2qPmP5u/RUbC2MGKdTP8ha7PVGSkoj4lpolNPI2VwZvE6EEAcJ65U3fk 02TIKhKrGEIX/CuT7JXKLSQrinPQg6JDLh2AAK/HnK38BF3MpuKYLjWMK+b233xUCJPg8Rz13 X-Received: by 2002:a05:7301:4090:b0:2c0:becb:7640 with SMTP id 5a478bee46e88-2cbfa9b364amr12326811eec.12.1775724756481; Thu, 09 Apr 2026 01:52:36 -0700 (PDT) X-Received: by 2002:a05:7301:4090:b0:2c0:becb:7640 with SMTP id 5a478bee46e88-2cbfa9b364amr12326782eec.12.1775724755918; Thu, 09 Apr 2026 01:52:35 -0700 (PDT) Received: from hu-jingyw-lv.qualcomm.com (Global_NAT1.qualcomm.com. [129.46.96.20]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2d460c8e9a5sm2312889eec.17.2026.04.09.01.52.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 01:52:35 -0700 (PDT) From: Jingyi Wang Date: Thu, 09 Apr 2026 01:52:26 -0700 Subject: [PATCH v5 3/5] dt-bindings: remoteproc: qcom: Document pas for SoCCP on Kaanapali and Glymur platforms 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 Message-Id: <20260409-knp-soccp-v5-3-805a492124da@oss.qualcomm.com> References: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> In-Reply-To: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Luca Weiss , Bartosz Golaszewski , Konrad Dybcio Cc: aiqun.yu@oss.qualcomm.com, tingwei.zhang@oss.qualcomm.com, trilok.soni@oss.qualcomm.com, yijie.yang@oss.qualcomm.com, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jingyi Wang , Krzysztof Kozlowski X-Mailer: b4 0.15-dev-3d134 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775724750; l=16488; i=jingyi.wang@oss.qualcomm.com; s=20250911; h=from:subject:message-id; bh=YuroHQl0RaEfqlcbPAw5LHxqeiE2B1J2dL3SPvMEUoA=; b=i7gY+OtiiuYVYV8DVRHJjm9Z0O7RGmwLA2MemJuaDnhyD4KcXuZFZc7VgCTHSSlo71NgX/iJR 5KvmvbAYt8fAVnRGWMO2da0jUYhNhqYH8znOlTfiIjKZ84dr+48WsJ7 X-Developer-Key: i=jingyi.wang@oss.qualcomm.com; a=ed25519; pk=PSoHZ6KbUss3IW8FPRVMHMK0Jkkr/jV347mBYJO3iLo= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA5MDA3NiBTYWx0ZWRfX7RO7yTHfZWDv IKjKttrN6dnBJMYVsrAlKIcBV3nB8JXEA8qLn0PR5zUbPQuyTB44cSvcT/TxaYX0DNb7lfE6Z0V XycDPe7Fkejcp0z2sApeX/cja50VM6URI67mS5LdZ4tY5TPnyn1TWakzG2JQmgqgwlyOZmD+tmJ q884ZxnS289b28EdyWfvJXwT+oUVTx1LWURFfYsCXbUTQnxTLTc1Vr6l+32LHiTtW1tuBSuAZ8S RAnNIpHGN5eh219wvPQLz4pJMMXejaqpZrAkGSslG5HhW3LYELyU/ViX+Qa4YeHDCSlPXaAqkvK 9KbHk0QYXt3RIuWry4Ov5o+N0E+21bWlnlaJllwZXnK3F/60AbTjyjVXtjRWKhb38Uh1ccOz1xl HDIage4YB06RTQXH8cDB/ZGryPzFY8B+7gWufyVnAwjuD1spht4fC/ZjTLMoU5/lHx1Fqd7BIrq 0OrtVQjjzY51zLovA6Q== X-Authority-Analysis: v=2.4 cv=eKIjSnp1 c=1 sm=1 tr=0 ts=69d768d5 cx=c_pps a=Uww141gWH0fZj/3QKPojxA==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=ZpdpYltYx_vBUK5n70dp:22 a=gEfo2CItAAAA:8 a=EUspDBNiAAAA:8 a=HRkYIiX3aUEsQExlndAA:9 a=QEXdDO2ut3YA:10 a=PxkB5W3o20Ba91AHUih5:22 a=sptkURWiP4Gy88Gu7hUp:22 X-Proofpoint-GUID: 0wAGdeJhJqz_YuaK9gi0UxqJrm5cGoIq X-Proofpoint-ORIG-GUID: 0wAGdeJhJqz_YuaK9gi0UxqJrm5cGoIq 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-09_02,2026-04-08_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 impostorscore=0 phishscore=0 priorityscore=1501 lowpriorityscore=0 clxscore=1015 spamscore=0 suspectscore=0 malwarescore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604090076 Document the component used to boot SoCCP on Kaanapali SoC and add compatible for Glymur SoCCP which could fallback to Kaanapali. Extend the "qcom,smem-states", "qcom,smem-state-names" in the pas-common and add maxItems constraints for SMEM properties in the documents that reference to pas-common. Reviewed-by: Krzysztof Kozlowski Signed-off-by: Jingyi Wang --- .../devicetree/bindings/remoteproc/qcom,adsp.yaml | 8 ++ .../remoteproc/qcom,kaanapali-soccp-pas.yaml | 154 +++++++++++++++++= ++++ .../bindings/remoteproc/qcom,milos-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,pas-common.yaml | 6 +- .../bindings/remoteproc/qcom,qcs404-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sa8775p-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sc7180-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sc8280xp-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sdx55-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sm6115-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sm6350-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sm6375-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sm8150-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sm8350-pas.yaml | 8 ++ .../bindings/remoteproc/qcom,sm8550-pas.yaml | 8 ++ 15 files changed, 263 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/= Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml index 16c35e15ee1b..7e8ecae8e6cb 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml @@ -73,6 +73,14 @@ properties: - const: handover - const: stop-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - memory-region diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,kaanapali-so= ccp-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,kaanapali-= soccp-pas.yaml new file mode 100644 index 000000000000..ce18460a949f --- /dev/null +++ b/Documentation/devicetree/bindings/remoteproc/qcom,kaanapali-soccp-pas= .yaml @@ -0,0 +1,154 @@ +# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/remoteproc/qcom,kaanapali-soccp-pas.yam= l# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Kaanapali SoCCP Peripheral Authentication Service + +maintainers: + - Jingyi Wang + +description: + The SoC Control Processor (SoCCP) is a small RISC-V MCU that controls USB + Type-C, battery charging and various other functions on Qualcomm SoCs, s= omewhat + analogous to traditional PC Embedded Controllers. This document describes + the Peripheral Authentication Service that loads and boots firmware for = SoCCP. + +properties: + compatible: + oneOf: + - items: + - enum: + - qcom,glymur-soccp-pas + - const: qcom,kaanapali-soccp-pas + - enum: + - qcom,kaanapali-soccp-pas + + reg: + maxItems: 1 + + clocks: + items: + - description: XO clock + + clock-names: + items: + - const: xo + + power-domains: + items: + - description: CX power domain + - description: MX power domain + + power-domain-names: + items: + - const: cx + - const: mx + + firmware-name: + items: + - description: Firmware name of the SoC Control Processor + - description: Firmware name of the SoCCP Devicetree + + memory-region: + items: + - description: Memory region for main Firmware authentication + - description: Memory region for Devicetree Firmware authentication + + interrupts: + items: + - description: Watchdog interrupt + - description: Fatal interrupt + - description: Ready interrupt + - description: Handover interrupt + - description: Stop acknowledge interrupt + - description: Pong interrupt + + interrupt-names: + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + - const: pong + + qcom,smem-states: + minItems: 2 + description: States used by the AP to signal the SoC Control Processor + + qcom,smem-state-names: + minItems: 2 + description: The names of the state bits used for SMP2P output + +required: + - compatible + - reg + - memory-region + - power-domains + - power-domain-names + +allOf: + - $ref: /schemas/remoteproc/qcom,pas-common.yaml# + +unevaluatedProperties: false + +examples: + - | + #include + #include + #include + #include + #include + #define IPCC_MPROC_SOCCP + + remoteproc@d00000 { + compatible =3D "qcom,kaanapali-soccp-pas"; + reg =3D <0x00d00000 0x200000>; + + clocks =3D <&rpmhcc RPMH_CXO_CLK>; + clock-names =3D "xo"; + + interrupts-extended =3D <&intc GIC_SPI 167 IRQ_TYPE_EDGE_RISING>, + <&soccp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, + <&soccp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, + <&soccp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, + <&soccp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, + <&soccp_smp2p_in 9 IRQ_TYPE_EDGE_RISING>; + interrupt-names =3D "wdog", + "fatal", + "ready", + "handover", + "stop-ack", + "pong"; + + memory-region =3D <&soccp_mem>, + <&soccp_dtb_mem_mem>; + + firmware-name =3D "qcom/kaanapali/soccp.mbn", + "qcom/kaanapali/soccp_dtb.mbn"; + + power-domains =3D <&rpmhpd RPMHPD_CX>, + <&rpmhpd RPMHPD_MX>; + power-domain-names =3D "cx", + "mx"; + + qcom,smem-states =3D <&soccp_smp2p_out 0>, + <&soccp_smp2p_out 8>; + qcom,smem-state-names =3D "stop", + "ping"; + + glink-edge { + interrupts-extended =3D <&ipcc IPCC_MPROC_SOCCP + IPCC_MPROC_SIGNAL_GLINK_QMP + IRQ_TYPE_EDGE_RISING>; + mboxes =3D <&ipcc IPCC_MPROC_SOCCP + IPCC_MPROC_SIGNAL_GLINK_QMP>; + + label =3D "soccp"; + qcom,remote-pid =3D <19>; + + /* ... */ + }; + }; diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.ya= ml b/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.yaml index d22d50c1e1ea..99d7337e58ec 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,milos-pas.yaml @@ -69,6 +69,14 @@ properties: - description: Memory region for core Firmware authentication - description: Memory region for Devicetree Firmware authentication =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml index dc5a9981c12c..e81ef400555a 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml @@ -46,13 +46,17 @@ properties: qcom,smem-states: $ref: /schemas/types.yaml#/definitions/phandle-array description: States used by the AP to signal the Hexagon core + minItems: 1 items: - - description: Stop the modem + - description: Stop the remoteproc + - description: ping the remoteproc =20 qcom,smem-state-names: description: The names of the state bits used for SMP2P output + minItems: 1 items: - const: stop + - const: ping =20 smd-edge: $ref: /schemas/remoteproc/qcom,smd-edge.yaml# diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml index 5854b3d2041d..bf9bf1af9ff1 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml @@ -59,6 +59,14 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.= yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.yaml index 7f287e55896e..dda2d144b720 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sa8775p-pas.yaml @@ -74,6 +74,14 @@ properties: - const: handover - const: stop-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml index cb0a61fc301d..b20780e5e26b 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml @@ -68,6 +68,14 @@ properties: - const: stop-ack - const: shutdown-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas= .yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml index fef9d7c39f3c..4bbe4a986c7c 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml @@ -65,6 +65,14 @@ properties: - const: stop-ack - const: shutdown-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.ya= ml b/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml index 2bbd427c6ea4..8c16b01c53e4 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml @@ -71,6 +71,14 @@ properties: maxItems: 1 description: Firmware name for the Hexagon core =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.yaml index 987fac433fae..454ba82bd6f1 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm6115-pas.yaml @@ -71,6 +71,14 @@ properties: - const: stop-ack - const: shutdown-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml index 53ffb1ccd199..42e02c64347a 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml @@ -65,6 +65,14 @@ properties: - const: stop-ack - const: shutdown-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.yaml index 6823a2a8d74e..274f87880e2e 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm6375-pas.yaml @@ -61,6 +61,14 @@ properties: =20 smd-edge: false =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml index 8a1fae095a3b..5a7c5f8c92d1 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml @@ -81,6 +81,14 @@ properties: - const: stop-ack - const: shutdown-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml index 4ea7518db537..72d0db5698c5 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml @@ -75,6 +75,14 @@ properties: - const: stop-ack - const: shutdown-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.y= aml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml index 74df49b5fbe9..0b44141d31ee 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8550-pas.yaml @@ -93,6 +93,14 @@ properties: - const: stop-ack - const: shutdown-ack =20 + qcom,smem-states: + maxItems: 1 + description: States used by the AP to signal the Hexagon core + + qcom,smem-state-names: + maxItems: 1 + description: The names of the state bits used for SMP2P output + required: - compatible - reg --=20 2.34.1 From nobody Sun Apr 12 23:24:03 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.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 DB3983822B3 for ; Thu, 9 Apr 2026 08:52:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724762; cv=none; b=ojSH+vN3bag/6TYjUr8MzJCTmstp+WU+Ta8wVfh4cQDCtrndg1sp9zhiFCiwg1xfpvcFVLOAjq4xh7b1X3dXkPpY5O5ZvtTeV3pfeNss5d5Or0Tj4biGdevr8CYV3+f14ILuhkiRANvx43udwP85i93MoCVgAvmn/8tH3RnQU0Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724762; c=relaxed/simple; bh=n5I+YFTTdwt/UV0ptVvro8vzeF0ApSpVzs5EPodmpJ4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hackEKOlgNy35O66vHvAsaKzbgKkXJ61gjouiFtCV3ziVi3f/KmBSSYtIx9l3YaJOov/6yy4r2yeztc19CKArQP8WLddZUMKDxZy4mlEEhVKBPONaUXzufjzafMcsl7wlQ9JJ3setMCYkNxHmRHZD+IqOc8k2xx1sG6kW7D/Wso= 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=Bundnklb; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=Sf1X+vJ1; arc=none smtp.client-ip=205.220.168.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="Bundnklb"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Sf1X+vJ1" Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6393MjLL3326658 for ; Thu, 9 Apr 2026 08:52:39 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= cEyXWQODeyHRBWFxwzlb1StMfjWkaPL8DcyHjmYesxY=; b=BundnklbLeWdFiyW aQ1Y7MF3iKrLL9DYXlPC3rdiwtVSc0h/ymREWTbyRzd4J5bWmRRvJsNByKf67CRO oPwXMB6oCLg0VrlGGdwQb+jYSb4xWbE4uecugu0csHYmB4ey+qGH4SIKlf0834sn g4R+zr4fSdsehLs2t7j19BBkCpV4H1aQvjFk4CXoJmFoNOCMrqz1GEer7j1vD+Gm mbBiRTiSspCdqVIWyvfKtkpEg/LWeHRZjJ/DFKUcABCK39r9avk5zRzuo978IGzv aXv8UTPGaUnIZpLOoLHovK9ZnwW/oTK6pRHamV/zrki2Neo1/Cg0Xiin4HC4h9U7 G7uMDw== Received: from mail-dy1-f198.google.com (mail-dy1-f198.google.com [74.125.82.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4ddw9mtccv-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 09 Apr 2026 08:52:38 +0000 (GMT) Received: by mail-dy1-f198.google.com with SMTP id 5a478bee46e88-2c4cfe08c9dso1967524eec.1 for ; Thu, 09 Apr 2026 01:52:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775724758; x=1776329558; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=cEyXWQODeyHRBWFxwzlb1StMfjWkaPL8DcyHjmYesxY=; b=Sf1X+vJ1Z8qGEus06XEEmF0PvBNV3yCQz5OCOIl8SVWtrY15tu+x6eiJDZTXl2yjAq igILRLQU2bNrNe2QK6ni6Bf1hAgb96nBaX8h5FKavDplLR6UOSwSKrTJ4bOIwJpJYafP Hn7nt9FgtCyhIefFtYGycge2cke2Gu9wFPUlJLuAJWLes2UMPcSAUWdWB/38v+Le83R0 C2y9TVAVQWhGn1qfbvo9E+4T/+dwiOewa2YiKH+NXdlGLQSvTvCSZ2GiUr7qLnFzvjMl pEcVolleCG4OKC/vya5TqV6c4W5yTgRVPQYvMvlt5CYzxxOMIuzAXZ0mmkY6aWB1UyL1 FJng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775724758; x=1776329558; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=cEyXWQODeyHRBWFxwzlb1StMfjWkaPL8DcyHjmYesxY=; b=N2Dmqcn2IaWVcNn6cdXEozWlPqXRwU58Y2Le0Z8IFLRln5dg3l+/s1wHqHRJ/d6mFJ QPaJlYuJMQV+9tuyXB4WMRTE9mbMKywTTOe7bO6YHZxRjB/VNpqZO6wElBRy3rJXljdO ODprMAHjGIrDMegclAMvZ1zJXBDnoBK5GIVuZMJPkU2CJvddLHZH0ZtDMqR7ME/wXqMV jwZSTbmZ8u9Ao3UWNoBdII9WZ1NyV1DRc0LONuRTFQirzxNufpnSHcb32quwPwPY/pLz nXY8tRheVNLattui3Z6Clgtpwfv0Rhu/yfnAFHewA27u8ctqkeaYsh8h38s2OGhdmOZK GHig== X-Forwarded-Encrypted: i=1; AJvYcCWWTxJ8cxD9RDwT6wek7XIxvGvvHckDq4pxoOTuyNbMohtlKe4oORhVUBdPX2tpNCRCwxBBY1StrJP9rAs=@vger.kernel.org X-Gm-Message-State: AOJu0YwwrMxQQMcI/+3Hn10UIkd1B4etfcFgrajczMdfwk7ui6l3ky7I LzGG5yf9SjvDYJegmTx7vYsDE4yHBs7Td86ebnlGeHlP7v5fwl+0EtKJ7GwpdyPhzSZCNAecdVH r6uunNSDJJ/oUVv3pSUU4kENjOlJgBRFeYPt+wy6vcuJZ0ZvSpjN2G8tMDAln9E/ZbBA= X-Gm-Gg: AeBDievui8epFI4MgtLTjTXem8k8xNnzmWsUkxcm79dcBJ4gQc7uMCBQPAlub2x2D3W kAtsPYVk4wwB0dGX5Zj8FK2angURrYW281Wmd1bEmQvQQ47IwBhGMzPmw2WZ1XiTO3Q4tDf+ctU Mw1gKg0DgFZuxRA8ZBevvI5qM76ceFF8QDOqFwKOnCsSkdAFuipY7mLrJucBtD383q3RU7zXHGr U1rXNWuur0rdT4q185b0OpWCNR9AjN4LXtaIiRydAvzfwwLhb3nloBikI7ZIl211VP3cFBcKLxL F2Rk8BFkZjZ5fQnICQGpmYjyjSCuDm7m/HM7MmfBRTLUq2GlAoAiuP//qR6CQGXQZWLk6oex4Nd KJTH1otjiCQV6xZKZja0j6R2aiv7fcW9GWFV2nxZsyxIqmrP1la2Dpd6bD25Ejj8TgzMBcbbW X-Received: by 2002:a05:7300:bc0c:b0:2c5:b23e:48a9 with SMTP id 5a478bee46e88-2d40e2f0792mr1466105eec.25.1775724758243; Thu, 09 Apr 2026 01:52:38 -0700 (PDT) X-Received: by 2002:a05:7300:bc0c:b0:2c5:b23e:48a9 with SMTP id 5a478bee46e88-2d40e2f0792mr1466086eec.25.1775724757673; Thu, 09 Apr 2026 01:52:37 -0700 (PDT) Received: from hu-jingyw-lv.qualcomm.com (Global_NAT1.qualcomm.com. [129.46.96.20]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2d460c8e9a5sm2312889eec.17.2026.04.09.01.52.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 01:52:36 -0700 (PDT) From: Jingyi Wang Date: Thu, 09 Apr 2026 01:52:27 -0700 Subject: [PATCH v5 4/5] remoteproc: qcom: pas: Add late attach support for subsystems 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 Message-Id: <20260409-knp-soccp-v5-4-805a492124da@oss.qualcomm.com> References: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> In-Reply-To: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Luca Weiss , Bartosz Golaszewski , Konrad Dybcio Cc: aiqun.yu@oss.qualcomm.com, tingwei.zhang@oss.qualcomm.com, trilok.soni@oss.qualcomm.com, yijie.yang@oss.qualcomm.com, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jingyi Wang , Gokul Krishna Krishnakumar X-Mailer: b4 0.15-dev-3d134 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775724750; l=8178; i=jingyi.wang@oss.qualcomm.com; s=20250911; h=from:subject:message-id; bh=n5I+YFTTdwt/UV0ptVvro8vzeF0ApSpVzs5EPodmpJ4=; b=s4oZvhS6UrcdwCI13t0Uo2kOakJBA6Pyuuj3XYIkx9dKKCTDyGlfNWSyuoWTS5UWWDGJtCysI HcbVy8R3kimCyFn4/5z2z3BXVDq0nAKfdPqqZeUpFHjlbMOwiMFuuwI X-Developer-Key: i=jingyi.wang@oss.qualcomm.com; a=ed25519; pk=PSoHZ6KbUss3IW8FPRVMHMK0Jkkr/jV347mBYJO3iLo= X-Authority-Analysis: v=2.4 cv=cfPiaHDM c=1 sm=1 tr=0 ts=69d768d7 cx=c_pps a=wEP8DlPgTf/vqF+yE6f9lg==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=EUspDBNiAAAA:8 a=bg9ZlOV0f5yciO4fbPwA:9 a=QEXdDO2ut3YA:10 a=bBxd6f-gb0O0v-kibOvt:22 X-Proofpoint-ORIG-GUID: hYUxkaCVaPcvKRe7FxPEgR88jSUjIv35 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA5MDA3NyBTYWx0ZWRfX/b5KF1TTpgS5 qviqCtxS95CHDLoUxwwyHm9fn5mGwDXCajD1oFxZfpUc9JbKaX0y7HfrOQ1KnM0aXbPJkAvQbpk s1S5QLjdbB0gD3EwKHK2wxRo3QBdTb71AO7TnOOOg/IMBLD3FiodzH5wpTF+w7gMdy3u8tsvIxF xBNOF8Dtj4CuQb175idHas0Zt8XnM1vRg3h+rfUvpjcyi5b8loY2VgfGJa5kk7IDocCruVK9Av7 VQ3So9fOlg+ctvP+8vn8WDHkpOgqE+iv67s3kgstvSHMoAnLZvPdrIgSuPqzQGQiNjQIW9N6Bu2 d5qUspO+fFVZjvkzvexirM+97KwDCpgFSqcDavjeZ2O94NTIqc7ITeRbabHnHKmXR8g7LfdFcPc Ih9DjdR5dPtgGWJ0IkPgWLJGXeO2ukZhnYWC2gXjfX92CaMmTrmJwRCceZPJRk/2HCOtEg93n/o wUZCQLcDLVsTfh1y8fA== X-Proofpoint-GUID: hYUxkaCVaPcvKRe7FxPEgR88jSUjIv35 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-09_02,2026-04-08_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 suspectscore=0 clxscore=1015 lowpriorityscore=0 malwarescore=0 spamscore=0 bulkscore=0 adultscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604090077 Subsystems can be brought out of reset by entities such as bootloaders. As the irq enablement could be later than subsystem bring up, the state of subsystem should be checked by reading SMP2P bits and performing ping test. A new qcom_pas_attach() function is introduced. if a crash state is detected for the subsystem, rproc_report_crash() is called. If the subsystem is ready and the ping is successful, it will be marked as "attached". If ready irq is not received, it could be the early boot feature is not supported by other entities. In this case, the state will be marked as RPROC_OFFLINE so that the PAS driver can load the firmware and start the remoteproc. Co-developed-by: Gokul Krishna Krishnakumar Signed-off-by: Gokul Krishna Krishnakumar Signed-off-by: Jingyi Wang --- drivers/remoteproc/qcom_q6v5.c | 69 ++++++++++++++++++++++++++++++++ drivers/remoteproc/qcom_q6v5.h | 6 +++ drivers/remoteproc/qcom_q6v5_pas.c | 80 ++++++++++++++++++++++++++++++++++= ++-- 3 files changed, 152 insertions(+), 3 deletions(-) diff --git a/drivers/remoteproc/qcom_q6v5.c b/drivers/remoteproc/qcom_q6v5.c index 58d5b85e58cd..52247c17c38a 100644 --- a/drivers/remoteproc/qcom_q6v5.c +++ b/drivers/remoteproc/qcom_q6v5.c @@ -20,6 +20,7 @@ =20 #define Q6V5_LOAD_STATE_MSG_LEN 64 #define Q6V5_PANIC_DELAY_MS 200 +#define Q6V5_PING_TIMEOUT_MS 500 =20 static int q6v5_load_state_toggle(struct qcom_q6v5 *q6v5, bool enable) { @@ -234,6 +235,74 @@ unsigned long qcom_q6v5_panic(struct qcom_q6v5 *q6v5) } EXPORT_SYMBOL_GPL(qcom_q6v5_panic); =20 +static irqreturn_t q6v5_pong_interrupt(int irq, void *data) +{ + struct qcom_q6v5 *q6v5 =3D data; + + complete(&q6v5->ping_done); + + return IRQ_HANDLED; +} + +int qcom_q6v5_ping_subsystem(struct qcom_q6v5 *q6v5) +{ + int ret; + int ping_failed =3D 0; + + reinit_completion(&q6v5->ping_done); + + /* Set master kernel Ping bit */ + ret =3D qcom_smem_state_update_bits(q6v5->ping_state, + BIT(q6v5->ping_bit), BIT(q6v5->ping_bit)); + if (ret) { + dev_err(q6v5->dev, "Failed to update ping bits\n"); + return ret; + } + + ret =3D wait_for_completion_timeout(&q6v5->ping_done, msecs_to_jiffies(Q6= V5_PING_TIMEOUT_MS)); + if (!ret) { + ping_failed =3D -ETIMEDOUT; + dev_err(q6v5->dev, "Failed to get back pong\n"); + } + + /* Clear ping bit master kernel */ + ret =3D qcom_smem_state_update_bits(q6v5->ping_state, BIT(q6v5->ping_bit)= , 0); + if (ret) { + dev_err(q6v5->dev, "Failed to clear master kernel bits\n"); + return ret; + } + + return ping_failed; +} +EXPORT_SYMBOL_GPL(qcom_q6v5_ping_subsystem); + +int qcom_q6v5_ping_subsystem_init(struct qcom_q6v5 *q6v5, struct platform_= device *pdev) +{ + int ret =3D -ENODEV; + + q6v5->ping_state =3D devm_qcom_smem_state_get(&pdev->dev, "ping", &q6v5->= ping_bit); + if (IS_ERR(q6v5->ping_state)) { + dev_err(&pdev->dev, "Failed to acquire smem state %ld\n", + PTR_ERR(q6v5->ping_state)); + return PTR_ERR(q6v5->ping_state); + } + + init_completion(&q6v5->ping_done); + + q6v5->pong_irq =3D platform_get_irq_byname(pdev, "pong"); + if (q6v5->pong_irq < 0) + return q6v5->pong_irq; + + ret =3D devm_request_threaded_irq(&pdev->dev, q6v5->pong_irq, NULL, + q6v5_pong_interrupt, IRQF_TRIGGER_RISING | IRQF_ONESHOT, + "q6v5 pong", q6v5); + if (ret) + dev_err(&pdev->dev, "Failed to acquire pong IRQ\n"); + + return ret; +} +EXPORT_SYMBOL_GPL(qcom_q6v5_ping_subsystem_init); + /** * qcom_q6v5_init() - initializer of the q6v5 common struct * @q6v5: handle to be initialized diff --git a/drivers/remoteproc/qcom_q6v5.h b/drivers/remoteproc/qcom_q6v5.h index 5a859c41896e..5025ffc4dbe8 100644 --- a/drivers/remoteproc/qcom_q6v5.h +++ b/drivers/remoteproc/qcom_q6v5.h @@ -17,22 +17,26 @@ struct qcom_q6v5 { struct rproc *rproc; =20 struct qcom_smem_state *state; + struct qcom_smem_state *ping_state; struct qmp *qmp; =20 struct icc_path *path; =20 unsigned stop_bit; + unsigned int ping_bit; =20 int wdog_irq; int fatal_irq; int ready_irq; int handover_irq; int stop_irq; + int pong_irq; =20 bool handover_issued; =20 struct completion start_done; struct completion stop_done; + struct completion ping_done; =20 int crash_reason; =20 @@ -52,5 +56,7 @@ int qcom_q6v5_unprepare(struct qcom_q6v5 *q6v5); int qcom_q6v5_request_stop(struct qcom_q6v5 *q6v5, struct qcom_sysmon *sys= mon); int qcom_q6v5_wait_for_start(struct qcom_q6v5 *q6v5, int timeout); unsigned long qcom_q6v5_panic(struct qcom_q6v5 *q6v5); +int qcom_q6v5_ping_subsystem(struct qcom_q6v5 *q6v5); +int qcom_q6v5_ping_subsystem_init(struct qcom_q6v5 *q6v5, struct platform_= device *pdev); =20 #endif diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q= 6v5_pas.c index da27d1d3c9da..34b54cf832d0 100644 --- a/drivers/remoteproc/qcom_q6v5_pas.c +++ b/drivers/remoteproc/qcom_q6v5_pas.c @@ -60,6 +60,7 @@ struct qcom_pas_data { int region_assign_count; bool region_assign_shared; int region_assign_vmid; + bool early_boot; }; =20 struct qcom_pas { @@ -423,9 +424,15 @@ static int qcom_pas_stop(struct rproc *rproc) =20 qcom_pas_unmap_carveout(rproc, pas->mem_phys, pas->mem_size); =20 - handover =3D qcom_q6v5_unprepare(&pas->q6v5); - if (handover) - qcom_pas_handover(&pas->q6v5); + /* + * qcom_q6v5_prepare is not called in qcom_pas_attach, skip unprepare to + * avoid mismatch. + */ + if (pas->rproc->state !=3D RPROC_ATTACHED) { + handover =3D qcom_q6v5_unprepare(&pas->q6v5); + if (handover) + qcom_pas_handover(&pas->q6v5); + } =20 if (pas->smem_host_id) ret =3D qcom_smem_bust_hwspin_lock_by_host(pas->smem_host_id); @@ -510,6 +517,63 @@ static unsigned long qcom_pas_panic(struct rproc *rpro= c) return qcom_q6v5_panic(&pas->q6v5); } =20 +static int qcom_pas_attach(struct rproc *rproc) +{ + int ret; + struct qcom_pas *pas =3D rproc->priv; + bool ready_state; + bool crash_state; + + pas->q6v5.running =3D true; + ret =3D irq_get_irqchip_state(pas->q6v5.fatal_irq, + IRQCHIP_STATE_LINE_LEVEL, &crash_state); + + if (ret) + goto disable_running; + + if (crash_state) { + dev_err(pas->dev, "Subsystem has crashed before driver probe\n"); + rproc_report_crash(rproc, RPROC_FATAL_ERROR); + ret =3D -EINVAL; + goto disable_running; + } + + ret =3D irq_get_irqchip_state(pas->q6v5.ready_irq, + IRQCHIP_STATE_LINE_LEVEL, &ready_state); + + if (ret) + goto disable_running; + + if (unlikely(!ready_state)) { + /* + * The bootloader may not support early boot, mark the state as + * RPROC_OFFLINE so that the PAS driver can load the firmware and + * start the remoteproc. + */ + dev_err(pas->dev, "Failed to get subsystem ready interrupt\n"); + pas->rproc->state =3D RPROC_OFFLINE; + ret =3D -EINVAL; + goto disable_running; + } + + ret =3D qcom_q6v5_ping_subsystem(&pas->q6v5); + + if (ret) { + dev_err(pas->dev, "Failed to ping subsystem, assuming device crashed\n"); + rproc_report_crash(rproc, RPROC_FATAL_ERROR); + goto disable_running; + } + + pas->q6v5.handover_issued =3D true; + + return 0; + +disable_running: + pas->q6v5.running =3D false; + + return ret; +} + static const struct rproc_ops qcom_pas_ops =3D { .unprepare =3D qcom_pas_unprepare, .start =3D qcom_pas_start, @@ -518,6 +582,7 @@ static const struct rproc_ops qcom_pas_ops =3D { .parse_fw =3D qcom_pas_parse_firmware, .load =3D qcom_pas_load, .panic =3D qcom_pas_panic, + .attach =3D qcom_pas_attach, }; =20 static const struct rproc_ops qcom_pas_minidump_ops =3D { @@ -855,6 +920,15 @@ static int qcom_pas_probe(struct platform_device *pdev) =20 pas->pas_ctx->use_tzmem =3D rproc->has_iommu; pas->dtb_pas_ctx->use_tzmem =3D rproc->has_iommu; + + if (desc->early_boot) { + ret =3D qcom_q6v5_ping_subsystem_init(&pas->q6v5, pdev); + if (ret) + dev_warn(&pdev->dev, "Falling back to firmware load\n"); + else + pas->rproc->state =3D RPROC_DETACHED; + } + ret =3D rproc_add(rproc); if (ret) goto remove_ssr_sysmon; --=20 2.34.1 From nobody Sun Apr 12 23:24:03 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.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 C34F338657B for ; Thu, 9 Apr 2026 08:52:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724763; cv=none; b=uyiB10pCqhND/4/Kcbeis/YEYg1+b5p3Tf2a6/ffoFExPsrsZ+p8YbYHJ0kuLosDPyH8Ac7XBM511URkA0ATtVqd+g83mx9e1qhb48oZ6kkAGMdwaz6XZX8dFcDZFTEBxWX4za4Ma1CAriHs9+ucL1LaOEnPpyOBR+hNUryU5rA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775724763; c=relaxed/simple; bh=X8apncHELkQiQFOopfO/eJAliJCDt9IbYR6LW9EKidE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=R5MIfuOFXyJj51dj4FraScTehgnQWQ05KOgGXjFIT4TpZVpN1/0rZSRhJ4BR+Ma6TgEM7khtSbD0OjcxP05aywVBM4GAyNAsF3UabmqKvwErxMrqligC4LRNKyxU3zCRGhx0hrpPl09tC2HcoIvyKBMYxlkEaas89TnKc95cW0E= 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=k++b5xHh; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=PTZNyK4N; arc=none smtp.client-ip=205.220.168.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="k++b5xHh"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="PTZNyK4N" Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 6392ut1n2247197 for ; Thu, 9 Apr 2026 08:52:40 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= ic5IEtyYAYRznxrQ2uPKemOuJzm0Ampz76bnyiqpntU=; b=k++b5xHhfIpIOtX6 A/hnnYE0ZAvo6ZFKA7JuK565pF24f4GA2mihpp9ohLeQuGXT06phwPxwSCnCPr1u rLa7KZW73yHtpdQ5noZocDz5Y56DbWmiL6hsN9kDshqHGlbAt+Uxble84FOxLZ0a z8jtQGJ9W1zB40/ikihWAj9cECfQtXJ9B/HVhM/8bZ6Eiohh33lv6M62hS/jXAFI WzkmgUasgMXRzA269Kyv6RZHVJmWmsNuITLzesCsCUN0ce7DIK75JAK7ATzdW3TZ 8bJV5wgda/L47CwHORTRFkZhNHb8VZfcyf0E22dYSD+YxfnAOrY4cTMAoeMu0eWP 8km8bw== Received: from mail-dl1-f69.google.com (mail-dl1-f69.google.com [74.125.82.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4de3s6s5kp-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 09 Apr 2026 08:52:40 +0000 (GMT) Received: by mail-dl1-f69.google.com with SMTP id a92af1059eb24-12c20a91932so4076538c88.1 for ; Thu, 09 Apr 2026 01:52:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775724759; x=1776329559; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ic5IEtyYAYRznxrQ2uPKemOuJzm0Ampz76bnyiqpntU=; b=PTZNyK4NRd6/YsPKj+azlADk7SE8TghCMY8qWobtudA5fIp1+2FcrRBxBYrp8asY1Y 6zoB5YD1jR4NLzWwHaPAiycU4NuivT7uRWNkPigSVqA/MILFt7Fh3h6Qmw+MNcxvI20e Qnb3xYRxMxDyvZk1ksFx0Upzofou4b6vynkTLIHBfx8R0B22KyIxUoalGVICUOr/ZSMg v4aaRxKwdoGtLW3Vb06Pz8qk+8LV6UovdAkas7/mwtDgle2Bf0ruN/TnrG7bV+Zv9QZs eaPAps6arBWlwfSooW383PxZZz30lIXiFRvZbUxHTUnJN/a0/tZl6pubQbPAQ5emkDOI kDtA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775724759; x=1776329559; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=ic5IEtyYAYRznxrQ2uPKemOuJzm0Ampz76bnyiqpntU=; b=bDVnqT/27TIce38pEPfOMzX4ZHp5uF5leOCaDKvwMPuw9+SoKXXmWADlYz/98nmE0q E+sKqAkFNB9p5GjudPlocVblfQr6vjm3NZ3PoV+8IRoVwG2X6sQoc3KjVbg1PZsLnPAW l746DDZYM3Nq/ROlRg1VGtK+W86t5q2ol6T4WZjE0/8urKh2IJhriim5J8XQQkrWRtM8 6AfDnyFMkX8hp7Oin3WGphEPrjbjKKZCyeDAsVyh2ihKtYbJ+fSLPn6GE+wGn/+LiYX2 QZBP5VZuP5Mb2oE7C4r9YoPOwxnmE2XGrES83AJki4fWUVihVKkbWr4YEneTIVHgsg9U V7Fw== X-Forwarded-Encrypted: i=1; AJvYcCV1LyS6nOoKtrLBLiNVKxSCF3Asb6hZsabLtJjp5vgiAAj5fKvNlTBKLFE3P0tfqRTGrn5YtE9ZBd0R1CI=@vger.kernel.org X-Gm-Message-State: AOJu0Yw8yrF7SXobtoFmIRDOSHxyKctv3vfO7g1OAz0gD+1EDKGRce9w 4l0+uxe6Ee+92uyyhu6krGynIZTydGc2fZgLDCCJiXYw6plaUI9OMn+9WodFYq8Ck24dTL6aJwM Nbwj2R0qb5zsCnOZGfqT9DN3v8hoXHEUxjcbs+bg/Wva4BKxWuwMJQ8AeIXbF6EfweKU= X-Gm-Gg: AeBDieuMwm9qPxe2DDwyddzZj+7XSmXE8k1qxU9H2T9lWZq4RYJwM8ifD4lcOt4N9b/ JPCtMWs+rem+C5I9PtxctMR2A3BzsGtcnvR+s1IROVCaH9g52swHKydhn0S+BIMofYkqrhjFNYQ a9EMy3y19bLCzBj0MSYUMqcrmgnqAapit9iHZT+h0Q92r2Sc6Wb0jNxejrzqrFoZmCLGVHwoyRK bukap8JJBLjQyKv41BZWH/21u5nQz24BjEHThmvpnEnV8k4vGr3PlMLHH5+LTauSf5258pe0amG vAKqcPPShbpwprobauaSbGAu4Wdos1a1fraHYIIBA61HI1A5yGg9nfl7uNqLR8HB4hTcWvFEfpK vY5h5FceeUehjfH5EIZRH7fqCrl9y8nQ7tZghd/BATuX3oA/jH9n0NSwmbz5D+QI5mlT2tfit X-Received: by 2002:a05:7300:dc8b:b0:2c6:31f0:a018 with SMTP id 5a478bee46e88-2cbfb98f39amr12704995eec.22.1775724759342; Thu, 09 Apr 2026 01:52:39 -0700 (PDT) X-Received: by 2002:a05:7300:dc8b:b0:2c6:31f0:a018 with SMTP id 5a478bee46e88-2cbfb98f39amr12704978eec.22.1775724758815; Thu, 09 Apr 2026 01:52:38 -0700 (PDT) Received: from hu-jingyw-lv.qualcomm.com (Global_NAT1.qualcomm.com. [129.46.96.20]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2d460c8e9a5sm2312889eec.17.2026.04.09.01.52.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Apr 2026 01:52:38 -0700 (PDT) From: Jingyi Wang Date: Thu, 09 Apr 2026 01:52:28 -0700 Subject: [PATCH v5 5/5] remoteproc: qcom_q6v5_pas: Add SoCCP node on Kaanapali 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 Message-Id: <20260409-knp-soccp-v5-5-805a492124da@oss.qualcomm.com> References: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> In-Reply-To: <20260409-knp-soccp-v5-0-805a492124da@oss.qualcomm.com> To: Bjorn Andersson , Mathieu Poirier , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Manivannan Sadhasivam , Luca Weiss , Bartosz Golaszewski , Konrad Dybcio Cc: aiqun.yu@oss.qualcomm.com, tingwei.zhang@oss.qualcomm.com, trilok.soni@oss.qualcomm.com, yijie.yang@oss.qualcomm.com, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jingyi Wang , Dmitry Baryshkov X-Mailer: b4 0.15-dev-3d134 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775724750; l=1726; i=jingyi.wang@oss.qualcomm.com; s=20250911; h=from:subject:message-id; bh=X8apncHELkQiQFOopfO/eJAliJCDt9IbYR6LW9EKidE=; b=BUkecBlsTbhEGuiBVfrl3qtTaWPHKGZSAMf5zyiNKsi0G/oTkgic3K61pr5FoLQtt47z2qpVN 9XWklRMggQMDM+IHRBZ3CHLxH9+dm63lvHcsgQzhcUBca0GAK8w5xr2 X-Developer-Key: i=jingyi.wang@oss.qualcomm.com; a=ed25519; pk=PSoHZ6KbUss3IW8FPRVMHMK0Jkkr/jV347mBYJO3iLo= X-Proofpoint-ORIG-GUID: MW32nrc-uA90jyPOCMGia2wHpVB13Pon X-Proofpoint-GUID: MW32nrc-uA90jyPOCMGia2wHpVB13Pon X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA5MDA3NiBTYWx0ZWRfX33iPkveH2plw UhRJHKxKKxjAEYync9bcxMWFJdCl3JqUwsCnSfJEJzkBBrleO30InThfLIfGdReROEOTU6EXfVZ HZw63f003mM59dP02qJCsfs5YgtS8FJG8YEpKqGRLPEYIPccLv+Ypn0USEk2Qsq+byZd6/wG7FC F+pByOyn2dRWA2UdWJzkWCJKG/bQk5euPR6s6vimaTpAwkjcvZ1iqBd98PIQBswPCvCBKp6fDeM 8uSWmFNnGZE37PC61eqD5jYlGYiUOcfIDN89CXCOh/LtpTOix3ily5on5SYPxnTL3YAHVEV8Aqm rChW1oJtMTv2vp1TwqvALPC3uYi3HCrNjz9Kez0JfI5RygvIVEpLXJWSdthowffHvVrPpN82Cdv u6kGo2tdvqLkieT4QnRx17XVWMPPmj0Q8RkNzh0nZvA5qGVaIQH5yAU140nfSwJLE/pTBqh3X1y aoTGUPbDccp5HsW76ng== X-Authority-Analysis: v=2.4 cv=TZemcxQh c=1 sm=1 tr=0 ts=69d768d8 cx=c_pps a=kVLUcbK0zfr7ocalXnG1qA==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_K5XuSEh1TEqbUxoQ0s3:22 a=EUspDBNiAAAA:8 a=-54vo4t_4OUFHp6kYXwA:9 a=QEXdDO2ut3YA:10 a=vr4QvYf-bLy2KjpDp97w: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-09_02,2026-04-08_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 lowpriorityscore=0 priorityscore=1501 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 impostorscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604090076 The SoC Control Processor (SoCCP) is small RISC-V MCU that controls USB Type-C, battery charging and various other functions on Qualcomm SoCs. It provides a solution for control-plane processing, reducing per-subsystem microcontroller reinvention. Add support for SoCCP PAS loader on Kaanapali platform. Reviewed-by: Dmitry Baryshkov Signed-off-by: Jingyi Wang Reviewed-by: Bartosz Golaszewski --- drivers/remoteproc/qcom_q6v5_pas.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q= 6v5_pas.c index 34b54cf832d0..1c81f22438cc 100644 --- a/drivers/remoteproc/qcom_q6v5_pas.c +++ b/drivers/remoteproc/qcom_q6v5_pas.c @@ -1604,8 +1604,26 @@ static const struct qcom_pas_data sm8750_mpss_resour= ce =3D { .region_assign_vmid =3D QCOM_SCM_VMID_MSS_MSA, }; =20 +static const struct qcom_pas_data kaanapali_soccp_resource =3D { + .crash_reason_smem =3D 656, + .firmware_name =3D "soccp.mbn", + .dtb_firmware_name =3D "soccp_dtb.mbn", + .pas_id =3D 51, + .dtb_pas_id =3D 0x41, + .proxy_pd_names =3D (char*[]){ + "cx", + "mx", + NULL + }, + .ssr_name =3D "soccp", + .sysmon_name =3D "soccp", + .auto_boot =3D true, + .early_boot =3D true, +}; + static const struct of_device_id qcom_pas_of_match[] =3D { { .compatible =3D "qcom,eliza-adsp-pas", .data =3D &sm8550_adsp_resource = }, + { .compatible =3D "qcom,kaanapali-soccp-pas", .data =3D &kaanapali_soccp_= resource }, { .compatible =3D "qcom,milos-adsp-pas", .data =3D &sm8550_adsp_resource = }, { .compatible =3D "qcom,milos-cdsp-pas", .data =3D &milos_cdsp_resource }, { .compatible =3D "qcom,milos-mpss-pas", .data =3D &sm8450_mpss_resource = }, --=20 2.34.1