From nobody Sun Feb 8 15:28:38 2026 Received: from mail-oa1-f52.google.com (mail-oa1-f52.google.com [209.85.160.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 86D702DEA64 for ; Fri, 9 Jan 2026 04:34:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767933252; cv=none; b=bEZt0teO2F+2YXD6g0sdVhpWtkbC7KpGkfU2kYJGqkNO9hR3+WtyXylX229aEN/EIezx3XCFIDT/C8EFM28XknDq5ro3BmU0oJOb/W9UyxhUUduFFfu1mn1L4sJ3kms3Nyw/8eQq/WUQaA7rCzJNJOnrreKAeyD1M0+cB200Wz8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767933252; c=relaxed/simple; bh=LhJaa2EqMb5zW7D+67KHtimJSY7IGXFH2uVklgbAO1c=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tKhhV0TMjnW1+yKhTFt++TTZbzTIiwDNqG0VkKdYaPoILNPqApUjSZvDRCZXFDPCOUa6nRvAeOk2TTpLKvF2sXYZRy/JHP9BBj8/nzbQODTbSG1cKuDdNfbaCwq8D6FPu5xPWU4A4KXTXO5XQVxaUZnEjn7yhwV514SpJfUy1sM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Vt8sm4tb; arc=none smtp.client-ip=209.85.160.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Vt8sm4tb" Received: by mail-oa1-f52.google.com with SMTP id 586e51a60fabf-3eae4e590a4so2022178fac.1 for ; Thu, 08 Jan 2026 20:34:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1767933249; x=1768538049; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+ZyuZP5Wvq2lu1NK8tZ306A4v+hSioBXOaeCovmmUS4=; b=Vt8sm4tb+SxfK7P1II24mvskPWhyyi3LFvoAb1mUKwiLc04bgmhfl1GtgcjJZ3Ckan nzO8zpqdUmdC3Du8iVWPo4O6fa0KOFQWhKPbKyu3CbgaYZ5YCJsIume0WOy+Wcd25P3P fK/O4Yv4qf1zXFyHcN+3nbU0hg/6L2CRHCRsdBgQROORGwy/Xt7ymp/JoCJoBcUt5jlV LAFtE3xJ/ZVGJKLvXSI/rKxOd9TO3BmNk7Cr/2BmKk8mX3X80CEDQW2AIOLHmb76QCin 8nZG6bpgVDmPrPrXCU3xCll5iBCgMOaUmrh5Q/ulU023n2L44rfkLsS9OJb9iVyzHIbl LXoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767933249; x=1768538049; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=+ZyuZP5Wvq2lu1NK8tZ306A4v+hSioBXOaeCovmmUS4=; b=NFVxFui+JZradNDIzNICMJNjx0pzNS/IeTrOIwvjhIXtwbBqeoQ4/DJD3l5hoPWVIC klox5PpqNTIUPYPYUp/7XKsmYAjBhocVuPX27DTsa9yMwRhS2ZIA6fDMNyooP5Ax8+2G ugjZr8JbQcX/35SffGZ7Cx+4zkMsE7rQfX9Q34FmCkv1os5oJafPeGCpn3NQ6yFJiDIm DuHrxUUinJ2ZESstOLU6tKMUx2WEWQsDuHrZPZ2NyViBCmRTIhL2BAC3H55KHelne5LN Z1rEvRrXtUo9apNWcQoF2Igy4qQIt3G6/5cPl+sqQLC4rv358xR+jd9biV3ue0S+FvCw tD5A== X-Forwarded-Encrypted: i=1; AJvYcCV1Uhq7wrw/SV/X3FayaNBrWuXoZJZJkFi1sHExkzVZITmhExHVTvpxFyPLsWkHD3rdSocT+4HN0eEbm6Y=@vger.kernel.org X-Gm-Message-State: AOJu0Yy2aKDEIYMDFHc13CLnbCsGoKR1hjdPPdSxDls4RYveXoboQnzv a+8GOSrT/xBnHrQYYe+uq/MjBMJi9BWRpi7ivBqjSId8zdsyZYRM6Kjp X-Gm-Gg: AY/fxX4eiYKCiYBUbelQo9ZyBtNqxheKhR1iXRslMFjqe5dp0VGDenZU7k9zlLdL4a9 QWGQtGQb1DpMlHLyrpG3FKl+Xaz0Q/hXmTx/bNyyPV0n5YdMnpa2lyjx+oDEIKbTYYAjk6SBg3G x0t1dn91oc2MrjM3MzR2SCsdq+GuCTfE2SFcO7udZOJwq5nnzU4G5mXdcp1oD2a7/q/yltkclW7 gT8eviWrEmupcIae7Y+C9zWH5u7M1wQU8OBPRnKUuOcDI77Lfe3xezU30MsyaThlQ1nAJN511XJ xZYAFVv8uckA89pDMKQnPvtaJk8DKkbBmIvY2yDp4DEtcoBaR1R/nRAK2XaCQG7OP/senuZneMA xm5YvuBnelupmpvL+es4bW7RRU5KiFNXcwJiG85ZsPCetCuV+sRs50fVz68wXmQfngmOcTWxBV9 6V9usfWTDYC/XJcD/zmrhlis7xRIppxCYNVbOm3roKFtbVb9Aukim1efOvUJM4rR6T4Ccrbv6rQ YZNM7JQaAdhMkoJQsFCbLSc2YZFLQ/aPuxgYHM= X-Google-Smtp-Source: AGHT+IG42nYET+oAEeyex5Lzv/1BoWn0YgdOYIjQB8kYL7Gk9E5M2tIrz3ZjMHML9QGGDUPQUmBFlA== X-Received: by 2002:a05:6871:e6:b0:3ec:3dbd:d4cc with SMTP id 586e51a60fabf-3ffc08ff16dmr4184456fac.8.1767933249275; Thu, 08 Jan 2026 20:34:09 -0800 (PST) Received: from nukework.lan (c-98-57-15-22.hsd1.tx.comcast.net. [98.57.15.22]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-3ffa515f4dasm6274421fac.21.2026.01.08.20.34.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 20:34:07 -0800 (PST) From: Alexandru Gagniuc To: andersson@kernel.org, krzk+dt@kernel.org, mturquette@baylibre.com, linux-remoteproc@vger.kernel.org, Mathieu Poirier , Rob Herring , Conor Dooley , Alexandru Gagniuc Cc: konradybcio@kernel.org, sboyd@kernel.org, p.zabel@pengutronix.de, linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-clk@vger.kernel.org Subject: [PATCH v2 4/9] dt-bindings: remoteproc: qcom: add IPQ9574 image loader Date: Thu, 8 Jan 2026 22:33:39 -0600 Message-ID: <20260109043352.3072933-5-mr.nuke.me@gmail.com> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20260109043352.3072933-1-mr.nuke.me@gmail.com> References: <20260109043352.3072933-1-mr.nuke.me@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Document the IPQ9574 native (non-PAS) WCSS image loader. It is similar to IPQ8074 WCSS, but requires several new clocks. These clocks must be enabled by the host in non-PAS mode, and are not optional. This binding did not have an example, so add one which uses the "qcom,ipq9574-wcss-pil" binding. Signed-off-by: Alexandru Gagniuc Reviewed-by: Krzysztof Kozlowski --- Changes since v1: - Fixed order of clock-names - Also use minItems: for clocks and clock-names - Explained why example is added to binding. --- .../remoteproc/qcom,ipq8074-wcss-pil.yaml | 116 +++++++++++++++++- 1 file changed, 114 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,ipq8074-wcss= -pil.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,ipq8074-wcss-= pil.yaml index c9bdd46fc745..865c11ee6d0c 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,ipq8074-wcss-pil.ya= ml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,ipq8074-wcss-pil.ya= ml @@ -19,6 +19,7 @@ properties: compatible: enum: - qcom,ipq8074-wcss-pil + - qcom,ipq9574-wcss-pil - qcom,qcs404-wcss-pil =20 reg: @@ -50,10 +51,12 @@ properties: - const: wcss_q6_reset =20 clocks: - maxItems: 10 + minItems: 10 + maxItems: 13 =20 clock-names: - maxItems: 10 + minItems: 10 + maxItems: 13 =20 cx-supply: description: @@ -121,6 +124,44 @@ allOf: clock-names: false clocks: false =20 + - if: + properties: + compatible: + contains: + enum: + - qcom,ipq9574-wcss-pil + then: + properties: + clocks: + minItems: 13 + clock-names: + items: + - const: anoc_wcss_axi_m + - const: q6_ahb + - const: q6_ahb_s + - const: q6_axim + - const: q6ss_boot + - const: mem_noc_q6_axi + - const: sys_noc_wcss_ahb + - const: wcss_acmt + - const: wcss_ecahb + - const: wcss_q6_tbu + - const: q6_axim2 + - const: wcss_ahb_s + - const: wcss_axi_m + qcom,smem-states: + items: + - description: Shutdown Q6 + - description: Stop Q6 + qcom,smem-state-names: + items: + - const: shutdown + - const: stop + + required: + - clocks + - clock-names + - if: properties: compatible: @@ -155,3 +196,74 @@ allOf: - cx-supply =20 additionalProperties: false + +examples: + - | + #include + #include + #include + + q6v5_wcss: remoteproc@cd00000 { + compatible =3D "qcom,ipq9574-wcss-pil"; + reg =3D <0x0cd00000 0x4040>, + <0x004ab000 0x20>; + reg-names =3D "qdsp6", "rmb"; + + interrupts-extended =3D <&intc GIC_SPI 325 IRQ_TYPE_EDGE_RISING>, + <&wcss_smp2p_in 0 IRQ_TYPE_NONE>, + <&wcss_smp2p_in 1 IRQ_TYPE_NONE>, + <&wcss_smp2p_in 2 IRQ_TYPE_NONE>, + <&wcss_smp2p_in 3 IRQ_TYPE_NONE>; + interrupt-names =3D "wdog", "fatal", "ready", + "handover", "stop-ack"; + + resets =3D <&gcc GCC_WCSSAON_RESET>, + <&gcc GCC_WCSS_BCR>, + <&gcc GCC_WCSS_Q6_BCR>; + reset-names =3D "wcss_aon_reset", + "wcss_reset", + "wcss_q6_reset"; + + clocks =3D <&gcc GCC_ANOC_WCSS_AXI_M_CLK>, + <&gcc GCC_Q6_AHB_CLK>, + <&gcc GCC_Q6_AHB_S_CLK>, + <&gcc GCC_Q6_AXIM_CLK>, + <&gcc GCC_Q6SS_BOOT_CLK>, + <&gcc GCC_MEM_NOC_Q6_AXI_CLK>, + <&gcc GCC_SYS_NOC_WCSS_AHB_CLK>, + <&gcc GCC_WCSS_ACMT_CLK>, + <&gcc GCC_WCSS_ECAHB_CLK>, + <&gcc GCC_WCSS_Q6_TBU_CLK>, + <&gcc GCC_WCSS_AHB_S_CLK>, + <&gcc GCC_Q6_AXIM2_CLK>, + <&gcc GCC_WCSS_AXI_M_CLK>; + + clock-names =3D "anoc_wcss_axi_m", + "q6_ahb", + "q6_ahb_s", + "q6_axim", + "q6ss_boot", + "mem_noc_q6_axi", + "sys_noc_wcss_ahb", + "wcss_acmt", + "wcss_ecahb", + "wcss_q6_tbu", + "q6_axim2", + "wcss_ahb_s", + "wcss_axi_m"; + + qcom,halt-regs =3D <&tcsr 0x18000 0x1b000 0xe000>; + + qcom,smem-states =3D <&wcss_smp2p_out 0>, + <&wcss_smp2p_out 1>; + qcom,smem-state-names =3D "shutdown", + "stop"; + memory-region =3D <&q6_region>; + + glink-edge { + interrupts =3D ; + label =3D "rtr"; + qcom,remote-pid =3D <1>; + mboxes =3D <&apcs_glb 8>; + }; + }; --=20 2.45.1