From nobody Thu Dec 18 08:34:09 2025 Received: from mail-oo1-f50.google.com (mail-oo1-f50.google.com [209.85.161.50]) (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 2417F1D7E42 for ; Wed, 10 Dec 2025 00:37:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.161.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765327063; cv=none; b=P901mr/q3MAzkCK7l51r6iF4OkD2iv6CarmsxonRRSZ4uWfycXBLw/LB2F9yDoGaJHuEes1gsVYoU8jvL1POFqbJS0m0NyqwieZeoimxsC6sNq7nDK+bhmXB8792Q5KB2Z/0uFzh+E71aRh55oOdsgA/Fe/25VSN4s9QueZ6TJY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765327063; c=relaxed/simple; bh=MkNz6YqHsBSFvsaxHTigfveKtaQAkdkwyH1gzRZO2Wk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ZMgWffzOmWHpkfNZN9xMM/WdXw7L+MWqEIr6W6VuwvWoizJ0nPeGcRmJtu0wWnwHipnW+Cui7N2wX+gBPXJa0fA8C7ko3Be9zcdK5jDm+BcTK1zwa246RT0aR+98Fuk6c3E3P4TijHrvnsiyOuwNPJm7s/RRSWGQZQsN51QbEDg= 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=Db2ZIqMB; arc=none smtp.client-ip=209.85.161.50 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="Db2ZIqMB" Received: by mail-oo1-f50.google.com with SMTP id 006d021491bc7-6592f1f55a8so1871937eaf.2 for ; Tue, 09 Dec 2025 16:37:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1765327060; x=1765931860; 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=z+PYBSiJp/d+9az4w/HJpjkv67V4ACob7nnsTPY6B7o=; b=Db2ZIqMBsuRCQzCcf10BznD5P8LWHoZ08kxUgnERlfgikX3bQ1czrma0lFeSoQj3rk 63uzZFJF1QsN/I8vH9OeHhc86HWIRkqKZ/zk8kvltYs9RRXrmIopF2ZQtLf3GQ5wZGzM rtmznEyRe+KV42dXKml8T2Re6alGYQEQTdniRXV9gYEyJc7S6V1i8RTd55eKYdpryxD9 5JDL5OsHyRncmy0XRUE5QpGmA+oGlad5LdylP9riVaoU6UhFzqcFr8SBmY3ksh4PRm45 rrHlKPl9zk7wWneYiNAucO7jGl2HIyFxGRcSI8QjcAh6/3AfmTNszqt4jWEvN0JnS4x0 Otqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765327060; x=1765931860; 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=z+PYBSiJp/d+9az4w/HJpjkv67V4ACob7nnsTPY6B7o=; b=AFx1i1Y9gkz3A8fxRwNJnsZmbuuzKIHugIFaV464H0FBfngYEDz3xjh2F1mVpOWStc WCo0b9n5FctUjwUrQUJeeYhZfhy1sYEE8gL9whrlAvOYTGRCuJ6eHj4K4EwT/Lcb31li kKO28uVAjQmWHEXhiLFznAdyHMLn5Jh5eYjLZ4iIkaUHRmkCC1xUKuu9cPPyZV+31gy/ YNYRTC9o7eRXPcSRRGmsFuD8hDOvE9ExOcuXanQ+khOzIVGlvOmfSoFeKvhyKme96WH4 MEX/V/yOgKmzSn954PgvGQOZHliZuaVq3aqxh0mwfRt8QA6I7Re1/F1Bgeuqwx8IJgat TMWA== X-Forwarded-Encrypted: i=1; AJvYcCVX34Df6j0O3xiUSk168/5O4UXlB7nK/4XHt+iAvkBXDsCVwcg+ySFOlobNdlQuDTV65FhWviL/GZ3xfw4=@vger.kernel.org X-Gm-Message-State: AOJu0YwyN6cO7xHG9Ut6JdgrRTTPp3BnyqW3ixk7Z30ATxvREdXXvwDt SAcMUmMimdf+6PWcLio/36D/8cSI6QehSObOSVp65yePLgtV/M0qhIlnvf3VOs6/ X-Gm-Gg: ASbGncuG6NNYlb9eDuyQ+JEUEhgaPDCLKDiHso1c1qWZtYYQoQzX7sof/HJdsupaqlt vF0sCU1hVXLLT8ev0QJiwvyKNgPX7W+d49E2PASfuVjZ8XIhRvtXJkdZo0j7HuYKyzp5mZRs+/b n+kcmvmyLABiMDDdrlBHGLRx1APIHiHT8ie6MQPt79QCg6q78ZNMtaZZ7pO9RkdoBHS25aRtu1f 5Mc8dVtpBNzM/0eAhUPnkiz0MhuZ0QQeVdH+4Hhwjg0qU39lRqMQf55hp0iCAYC9GHaOtwBbE9C T42naSb6yPS3Dn50OIIJmqluRBjHQhEcJft9Xrwxa2DA7EWX6RMPQVtfzTu36qPDMxuw39KGXLN b8rXNW63H4OdWwZVPz/2j/xMHL/SMwMlUEHjlyMhyz+f1rnxqfLzScksNIPweR3Pvt5m70iRj8B l93YiTSPqh8+Y8g6Ev7YzaUXsBSwoNMlBQNNmHgWGUDl6lCXeTIvXa9xIwzQsaC7hBFrZr2eEVT EOkmvAedrEeahZ79NvSXQbi4Y67 X-Google-Smtp-Source: AGHT+IFmHaV8CXvM01LwOOyl6BMhdBjJsxkT1IkIhIQRnuDkPGFOEOlSZ4eSnruo/u54dcHyKVEoOQ== X-Received: by 2002:a05:6820:210d:b0:659:9a49:8e71 with SMTP id 006d021491bc7-65b2acebe42mr515805eaf.65.1765327060188; Tue, 09 Dec 2025 16:37:40 -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 006d021491bc7-6597ea6807esm8588826eaf.0.2025.12.09.16.37.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Dec 2025 16:37:39 -0800 (PST) From: Alexandru Gagniuc To: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org, Bjorn Andersson , Mathieu Poirier , Placeholder Maintainer Cc: konradybcio@kernel.org, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, Alexandru Gagniuc Subject: [PATCH RFC 1/3] dt-bindings: remoteproc: qcom,ipq8074-wcss-pil: convert to DT schema Date: Tue, 9 Dec 2025 18:37:23 -0600 Message-ID: <20251210003729.3909663-2-mr.nuke.me@gmail.com> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20251210003729.3909663-1-mr.nuke.me@gmail.com> References: <20251210003729.3909663-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" Convert the QCS404 and IPQ WCSS Peripheral Image Loader bindings to DT schema. The text bindngs incorrectly implied that IPQ8074 needs only one qcom,smem-states entry. This is only true for QCS404. IPQ8074 requires both "stop" and "shutdown". Signed-off-by: Alexandru Gagniuc --- .../remoteproc/qcom,ipq9574-wcss-pil.yaml | 167 ++++++++++++++++++ .../bindings/remoteproc/qcom,q6v5.txt | 102 ----------- 2 files changed, 167 insertions(+), 102 deletions(-) create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,ipq95= 74-wcss-pil.yaml delete mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,q6v5.= txt diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,ipq9574-wcss= -pil.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,ipq9574-wcss-= pil.yaml new file mode 100644 index 0000000000000..d28f42661d084 --- /dev/null +++ b/Documentation/devicetree/bindings/remoteproc/qcom,ipq9574-wcss-pil.ya= ml @@ -0,0 +1,167 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/remoteproc/qcom,ipq9574-wcss-pil.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm IPQ WCSS Peripheral Image Loader + +maintainers: + - Placeholder Maintainer + +description: + The IPQ WCSS peripheral image loader is used to load firmware on the Qua= lcomm + Q6 processor that exposes WiFi-6 devices to the OS via the AHB bus. It is + generally used by ath11k to start up the wireless firmware. + +properties: + compatible: + enum: + - qcom,ipq8074-wcss-pil + - qcom,qcs404-wcss-pil + + reg: + minItems: 2 + maxItems: 2 + description: + The base address and size of the QDSP6, and RMB register blocks + + reg-names: + items: + - const: qdsp6 + - const: rmb + + interrupts-extended: + minItems: 5 + maxItems: 5 + + interrupt-names: + items: + - const: wdog + - const: fatal + - const: ready + - const: handover + - const: stop-ack + + resets: + minItems: 3 + maxItems: 3 + + reset-names: + items: + - const: wcss_aon_reset + - const: wcss_reset + - const: wcss_q6_reset + + clocks: + minItems: 10 + maxItems: 13 + + clock-names: + minItems: 10 + maxItems: 13 + + cx-supply: + description: + reference to the regulators used for the booting of the Hexagon core + + memory-region: + description: Reference to wcss reserved-memory region + + qcom,halt-regs: + $ref: /schemas/types.yaml#/definitions/phandle-array + description: + A phandle reference to a syscon representing TCSR followed by the th= ree + offsets within syscon for q6, wcss and nc halt registers. + items: + - items: + - description: phandle to TCSR_MUTEX registers + - description: offset to the Q6 halt register + - description: offset to the wcss halt register + - description: offset to the nc halt register + + qcom,smem-states: + $ref: /schemas/types.yaml#/definitions/phandle-array + description: States used by the AP to signal the remote processor + + qcom,smem-state-names: + description: + Names of the states used by the AP to signal the remote processor + + glink-edge: + $ref: /schemas/remoteproc/qcom,glink-edge.yaml# + description: + Qualcomm G-Link subnode which represents communication edge, channels + and devices related to the Modem. + +required: + - compatible + - reg + - reg-names + - interrupts-extended + - interrupt-names + - memory-region + - qcom,halt-regs + - qcom,smem-states + - qcom,smem-state-names + +allOf: + - if: + properties: + compatible: + contains: + enum: + - qcom,ipq8074-wcss-pil + then: + properties: + qcom,smem-states: + items: + - description: Shutdown Q6 + - description: Stop Q6 + qcom,smem-state-names: + items: + - const: shutdown + - const: stop + - if: + properties: + compatible: + contains: + enum: + - qcom,qcs404-wcss-pil + then: + properties: + qcom,smem-states: + maxItems: 1 + qcom,smem-state-names: + items: + - const: stop + + - if: + properties: + compatible: + contains: + enum: + - qcom,qcs404-wcss-pil + then: + properties: + clocks: + minItems: 10 + maxItems: 10 + clock-names: + items: + - const: xo + - const: gcc_abhs_cbcr + - const: gcc_axim_cbcr + - const: lcc_ahbfabric_cbc + - const: tcsr_lcc_cbc + - const: lcc_abhs_cbc + - const: lcc_tcm_slave_cbc + - const: lcc_abhm_cbc + - const: lcc_axim_cbc + - const: lcc_bcr_sleep + required: + - clocks + - clock-names + - cx-supply + +additionalProperties: false diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt b/D= ocumentation/devicetree/bindings/remoteproc/qcom,q6v5.txt deleted file mode 100644 index 573a88b606773..0000000000000 --- a/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt +++ /dev/null @@ -1,102 +0,0 @@ -Qualcomm Hexagon Peripheral Image Loader - -This document defines the binding for a component that loads and boots fir= mware -on the Qualcomm Hexagon core. - -- compatible: - Usage: required - Value type: - Definition: must be one of: - "qcom,ipq8074-wcss-pil" - "qcom,qcs404-wcss-pil" - -- reg: - Usage: required - Value type: - Definition: must specify the base address and size of the qdsp6 and - rmb register blocks - -- reg-names: - Usage: required - Value type: - Definition: must be "q6dsp" and "rmb" - -- interrupts-extended: - Usage: required - Value type: - Definition: reference to the interrupts that match interrupt-names - -- interrupt-names: - Usage: required - Value type: - Definition: must be "wdog", "fatal", "ready", "handover", "stop-ack" - -- clocks: - Usage: required - Value type: - Definition: reference to the clocks that match clock-names - -- clock-names: - Usage: required - Value type: - Definition: The clocks needed depend on the compatible string: - qcom,ipq8074-wcss-pil: - no clock names required - qcom,qcs404-wcss-pil: - must be "xo", "gcc_abhs_cbcr", "gcc_abhs_cbcr", - "gcc_axim_cbcr", "lcc_ahbfabric_cbc", "tcsr_lcc_cbc", - "lcc_abhs_cbc", "lcc_tcm_slave_cbc", "lcc_abhm_cbc", - "lcc_axim_cbc", "lcc_bcr_sleep" - -- resets: - Usage: required - Value type: - Definition: reference to the list of 3 reset-controllers for the - wcss sub-system - -- reset-names: - Usage: required - Value type: - Definition: must be "wcss_aon_reset", "wcss_reset", "wcss_q6_reset" - for the wcss sub-system - -- memory-region: - Usage: required - Value type: - Definition: reference to wcss reserved-memory region. - -For the compatible string below the following supplies are required: - "qcom,qcs404-wcss-pil" -- cx-supply: - Usage: required - Value type: - Definition: reference to the regulators to be held on behalf of the - booting of the Hexagon core - -- qcom,smem-states: - Usage: required - Value type: - Definition: reference to the smem state for requesting the Hexagon to - shut down - -- qcom,smem-state-names: - Usage: required - Value type: - Definition: must be "stop" - -- qcom,halt-regs: - Usage: required - Value type: - Definition: a phandle reference to a syscon representing TCSR followed - by the three offsets within syscon for q6, wcss and nc - halt registers. - -- memory-region: - Usage: required - Value type: - Definition: reference to the reserved-memory for the region - -The Hexagon node may also have an subnode named either "smd-edge" or -"glink-edge" that describes the communication edge, channels and devices -related to the Hexagon. See ../soc/qcom/qcom,smd.yaml and -../soc/qcom/qcom,glink.txt for details on how to describe these. --=20 2.45.1 From nobody Thu Dec 18 08:34:09 2025 Received: from mail-oo1-f47.google.com (mail-oo1-f47.google.com [209.85.161.47]) (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 D700D1C5F1B for ; Wed, 10 Dec 2025 00:37:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.161.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765327064; cv=none; b=ujYsVH1Eiw0/PuX2t0vVu57J41M/MbLeV0m+80VAco7h9hyCAuYpUBN1VN+QgZSTxr6HW7vXbDannneEboZSYgaQaoHc+KHqBJs/3TFCVv/L1n0ayRn7d71iAoSiTfDfoKxaIdw+k7LDpEhJHpdkrL8+3CKn/wxkvk5SDclVZa8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765327064; c=relaxed/simple; bh=G4LpuwCOJLbUN/gwnizf+BfIMjnWPhuHQE0T4rsmdcY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=JD7J0OCHPoI9/VnkGhPqP9TpN6yGptEVE6H5C1df99UtAZ5HHV258qTiNY3HquMTSy/E5cllxbB22jMUf0lwQyUQpFxCHky0b1IrfT33bi6QNyLExuaPdzoik9qbQzQfepvtIHALzMyB4wh3iGNnWfVhkV+7s/rndRWwzzQqUAU= 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=Fzgg95Hj; arc=none smtp.client-ip=209.85.161.47 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="Fzgg95Hj" Received: by mail-oo1-f47.google.com with SMTP id 006d021491bc7-65968986a0cso3614871eaf.3 for ; Tue, 09 Dec 2025 16:37:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1765327062; x=1765931862; 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=EXuh+mZ8ErhL8SGhoFBvHzfsjc7R9hgObbpwQbgQ/H4=; b=Fzgg95HjoHYESu38tnpkL9Wi+9iI7GdsMy9M/B5OXyyIw6KoWNhr9sBamgLewvpYUL m3js0+vxbJNIVT2ekgqTXdodZXg4j6aTcZHQHZp8XqYAwMOXjMioA6jN6I+bjV27kWUM qLpT2rf6IYeAV8wsyg6CZWciiYgkmPynYLzJh5qG2mVihnQD9DdHCa/ek3wvcu5s87mG O02o7REnSW5ptlJqcY88nuXs0FQ4OSMtiU39/+0eBGLXgnx7Gkm9rEToh4vV5eRlQEHw SNAr3UXCKc/fLWTZ7WJCVx3PKUKl29Yer8YNBDrhQzOlKl+O3grIbMtotDx+KAA4nULK A/Qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765327062; x=1765931862; 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=EXuh+mZ8ErhL8SGhoFBvHzfsjc7R9hgObbpwQbgQ/H4=; b=aTRAElUxzBPoIpPP/uMK+JYeVgo3X9t7p1DSiRRDbHUjY8UdvK4/0b9V3QpAkrBGgB duq6G8V6i+RuTZD4GgUeaXMSEUsH6bIyCa2JKa09r/gHcpZ+Ouu028SBSby+L3jhZdBv +B1mkWuRsGE+57LBnmaas/yDDr7GnW6zzU++gwjEVAVecRwWcKHD9TSBV2QseYxADzsJ Ig/BtuyDlk3/0p+QwUMEyXmz1FM0pzpIGjqOeJvBW2fdpzNELRTASi+ajbGdxzXMNwk8 ycWkOpaA/eIu5z4qIyoO6OA1/zMdPZlg3jWO/Ucg0t9Kqk+pnyhJeO7u2gnaRUofTFNW VVvg== X-Forwarded-Encrypted: i=1; AJvYcCUal2M7MnPpgcQsZmm4SXKoOKYUmVDimhUZ8i/KnwZytdiuoVQFKtTRH6+Rr/woKkSZiveutIlMxZDU83s=@vger.kernel.org X-Gm-Message-State: AOJu0YzztjnuxRcW9vMwPJM8bkAYITzZ2hTQ4dn8rwEfJ1zPgAtHpNTq pRuZTXj7LU2pBJ0a3HYaHL/TDFQfcDbMeHZSCkuISsyuFBLDaepVwMLS X-Gm-Gg: ASbGncu66m1ZYaSBICatqaMdolxEPzPSzQLd0ddJFqUFsCETK/f3y9kAzcpGbn0dik2 iUtfywR/LsxJpA9m3GJDFUSBasIZOWfn5ZkXVMUM+ECbVV3Ii6RMkmzoItWAjNDIhW8ADhNmVKI fimDD0Joy61QDsfLhhRyOArZVfPcvVkYFC3WD0I6W4pojUv88ANtb78Bjp4jvXeQ4o9Ie/zeMRY gwhLeZVnzxHnKMYM3cx+OntmMfhDm1ipkdHEbVle+dYobhTUbtOLNtXvK6U1oHpKfoBVI8EQq3b gTpJEiFoG7chkq7NK46gdRg5KMxS5WsXutr9czJwhSlngoV03D4zFocZNacldJ3IDGJaVsTUzu8 LNbK5TZIlASNKVNn2XmUl0q4lRnpZulcSPCkm1hQ4hZ/51eWVY4JImgU4umAsIueJMAbt8kfDVX 3YUS5qp5A42cY2xO/E7QAVFg86CdFKVDBhll4EKJVW4UibkSmGK/HbJOdG8vrEZxdKeo97p/hT4 JB4bfW/GYQoRGBjcaRkdSj76GYq X-Google-Smtp-Source: AGHT+IG66XD5eCcirhwZnhQdBIvfhEjoQkIYSXGtY5MHAU83Z80X3dPCocpoIA4dOpLUUVkFkQ+JTA== X-Received: by 2002:a05:6820:990:b0:657:6905:56f5 with SMTP id 006d021491bc7-65b2aaeb58fmr604703eaf.0.1765327061874; Tue, 09 Dec 2025 16:37:41 -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 006d021491bc7-6597ea6807esm8588826eaf.0.2025.12.09.16.37.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Dec 2025 16:37:41 -0800 (PST) From: Alexandru Gagniuc To: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org, Bjorn Andersson , Mathieu Poirier , Placeholder Maintainer Cc: konradybcio@kernel.org, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, Alexandru Gagniuc Subject: [PATCH RFC 2/3] dt-bindings: remoteproc: qcom: add IPQ9574 image loader Date: Tue, 9 Dec 2025 18:37:24 -0600 Message-ID: <20251210003729.3909663-3-mr.nuke.me@gmail.com> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20251210003729.3909663-1-mr.nuke.me@gmail.com> References: <20251210003729.3909663-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 in non-PAS mode, and are not optional. Add an example that uses the "qcom,ipq9574-wcss-pil" binding. Signed-off-by: Alexandru Gagniuc --- .../remoteproc/qcom,ipq9574-wcss-pil.yaml | 102 ++++++++++++++++++ 1 file changed, 102 insertions(+) diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,ipq9574-wcss= -pil.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,ipq9574-wcss-= pil.yaml index d28f42661d084..3daa1cb736bf2 100644 --- a/Documentation/devicetree/bindings/remoteproc/qcom,ipq9574-wcss-pil.ya= ml +++ b/Documentation/devicetree/bindings/remoteproc/qcom,ipq9574-wcss-pil.ya= ml @@ -18,6 +18,7 @@ properties: compatible: enum: - qcom,ipq8074-wcss-pil + - qcom,ipq9574-wcss-pil - qcom,qcs404-wcss-pil =20 reg: @@ -112,6 +113,7 @@ allOf: contains: enum: - qcom,ipq8074-wcss-pil + - qcom,ipq9574-wcss-pil then: properties: qcom,smem-states: @@ -136,6 +138,35 @@ allOf: items: - const: stop =20 + - if: + properties: + compatible: + contains: + enum: + - qcom,ipq9574-wcss-pil + then: + properties: + clocks: + minItems: 13 + clock-names: + items: + - const: anoc_wcss_axi_m + - const: wcss_ahb_s + - const: wcss_ecahb + - const: wcss_acmt + - const: wcss_axi_m + - const: q6_axim + - const: q6_axim2 + - const: q6_ahb + - const: q6_ahb_s + - const: q6ss_boot + - const: mem_noc_q6_axi + - const: wcss_q6_tbu + - const: sys_noc_wcss_ahb + required: + - clocks + - clock-names + - if: properties: compatible: @@ -165,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_WCSS_AHB_S_CLK>, + <&gcc GCC_WCSS_ECAHB_CLK>, + <&gcc GCC_WCSS_ACMT_CLK>, + <&gcc GCC_WCSS_AXI_M_CLK>, + <&gcc GCC_Q6_AXIM_CLK>, + <&gcc GCC_Q6_AXIM2_CLK>, + <&gcc GCC_Q6_AHB_CLK>, + <&gcc GCC_Q6_AHB_S_CLK>, + <&gcc GCC_Q6SS_BOOT_CLK>, + <&gcc GCC_MEM_NOC_Q6_AXI_CLK>, + <&gcc GCC_WCSS_Q6_TBU_CLK>, + <&gcc GCC_SYS_NOC_WCSS_AHB_CLK>; + + clock-names =3D "anoc_wcss_axi_m", + "wcss_ahb_s", + "wcss_ecahb", + "wcss_acmt", + "wcss_axi_m", + "q6_axim", + "q6_axim2", + "q6_ahb", + "q6_ahb_s", + "q6ss_boot", + "mem_noc_q6_axi", + "wcss_q6_tbu", + "sys_noc_wcss_ahb"; + + 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 From nobody Thu Dec 18 08:34:09 2025 Received: from mail-oa1-f44.google.com (mail-oa1-f44.google.com [209.85.160.44]) (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 953991D5CFB for ; Wed, 10 Dec 2025 00:37:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765327066; cv=none; b=P1VHDK5QgVAkTFoBk1RMvT1iB7CVcnhDQWLiQkfzsnvA/dKiKK5Cm93IAPpAitzUbjjn63YL+BNQE4Q03Blx9ikWKHzEUTJGKmC/mlvvsjw7uoJQSCScT4lzD7ybDN1uGEES761ArZ4+zrODUaDWgvxwKm1ciFcCgITBWpkhq5A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765327066; c=relaxed/simple; bh=kMV2klR1DStzeKF01dgOaxxEEFLWBWwy94a3z1Sv2lM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=e0OdkYgD4BsBE8MdVQwjCtGqYJrBlLJm/NSLwUgmL0AQ/RjS1xBzDuS7ouRdaWIWZaa35PAkN7D7ugF0r9IDxWI29VHDzIfxp2TH2c7d/Ablg0Zfqi3e6X1puQdLL8d09tfjRyadGMtTlr1AYvSSY2F+TsaTccMXeIOCukoICb4= 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=Ek/7y7xT; arc=none smtp.client-ip=209.85.160.44 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="Ek/7y7xT" Received: by mail-oa1-f44.google.com with SMTP id 586e51a60fabf-3e37ad3d95aso4472877fac.3 for ; Tue, 09 Dec 2025 16:37:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1765327063; x=1765931863; 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=cTnBfhCPlftBcGJdY/ReLgnu94bb7n8RiqGchanYiDU=; b=Ek/7y7xTnPtM6ZvYYrhiuJ8zoWIsOh3W8CvyjYjorDjpDgW44/80kZ1pWAG6BJmQPh DAt1bYMzjvvHFzVVQoQGv4xY0s5FDeEXl8ziMZ2g8qj1y21Dd4GnEaQIfVki7G5XyJqL Z6nmEvtglTzAUlmjz2z7p7N9V7DJygqwM4NnFnzMc4QSvqXvzsTJMOuHPxS5DUScxkH1 xXrz2Frv6f90hedYiA9daM+9ohmOP69aZfvYVzOOfMa4i9UXF3KmGbznC+XCnIHRQXDs npz46EcfWgxeA26I0i6vHJFvKs1Fmue2/0HFE/qN9MrbbAErr2WEuwnhoIWAd1UwF6dO OOEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765327063; x=1765931863; 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=cTnBfhCPlftBcGJdY/ReLgnu94bb7n8RiqGchanYiDU=; b=amj3/S47/k96woxmG3rfm/5JStqHiVhVewrQckVU8GLrqbJF+JRfH5YDZNXo75sD+c CfLFRe3cQ04uSkMGU3FWw+wvqzJPYvjwKdPf4qyN7T+fNUT8MyEV+Iz2caD3FOsj0a6t 4fMvI7kuFSwkJOfbKSxQXTe+4wZNtR7AnfcVMELZFn/bgO+zehUv8wx0NgkJNAkMZLVx sKy9uyW/5RM4AjtGfvUK0u0+swPeSsT72dPllRR96vl92/jlOqqSMnfaWn+nA6DFx2QX idbF43E1W/LZ+4/ZJKNCQMEzAa0i1RL3DaxtscAlzMw4s4weeUJkWM/Wxo3jKfpYsSg5 kbng== X-Forwarded-Encrypted: i=1; AJvYcCVpvKoBavdMrhJEkIJhubVymINvoCinGEQQc7J/CYfOdjrHBTuBeWOKbI1ayXkPwxpgBY3TKUj0PQHJoRw=@vger.kernel.org X-Gm-Message-State: AOJu0Yy+NtZS8LRNmdmPHFd7PfVh5yAfVXn9InAcVi8UGgKmEMwbGsFI sSgkciapyNzOnSh3fdsExgwsLkn+5HK0AsgybxNTELMMSXXAFrWPQ9yk X-Gm-Gg: ASbGncsKO+OiisSca+2G3W5Kb2k3p3mu+Mg7ipyhclaLVK06cXSbZC8MZYKceyWhmBg jv7ETqK8F7YQg2gSimkflKI9QsyKxWrQFK8AedbKSGl3a7iP7Gpsg6CbHO2ODZaJ85E7cebn6sF 3iMDAnIZJuZZ8iBHp/+3pN2BDwnGYmeLDBSMtZz6UPrYUeLEoPuZksmDKx7VtHESCGCDCUVaDuF ksjRhvEQkkbOiXBSRvsmEn8Ed4lj34Fv83X33EDTuw3agMmSM3Uh/x5k40aOfm7WPKbtjCLXL8E fgG/h5Otsfw/XLHb2z2AHQtj/mmVIxhWcOzBdvcGQmzc5y9hZZqn7c1KjKY8yj8va53I6qhnCtf rPjUfuKGmGAhLt5fwFowleGISLZoyR+7ocrpKLI0YMEZHeqXW42ZAeDf5ENu9IHY39c7xziXYSc Iqgfcb8R4hEvqbp9mQccHmsm8+TNAg0uHWvVbikve5TbAbs4XfD/nav1ULmFqjR5xxKL0P3VpSb 0P3DydaxlNslQeS8tHmm2bcCoph X-Google-Smtp-Source: AGHT+IFXtFBZQ4Phs+DA2gIk8zEB/PSTinPp9kLxq66H0kohPSDEsTuKzeL4L4ahy6FStdu0aIQDxw== X-Received: by 2002:a05:6820:168a:b0:659:9a49:8eba with SMTP id 006d021491bc7-65b2ad5bca7mr509385eaf.62.1765327063516; Tue, 09 Dec 2025 16:37:43 -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 006d021491bc7-6597ea6807esm8588826eaf.0.2025.12.09.16.37.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Dec 2025 16:37:42 -0800 (PST) From: Alexandru Gagniuc To: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org, Bjorn Andersson , Konrad Dybcio Cc: mathieu.poirier@linaro.org, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, Alexandru Gagniuc Subject: [PATCH RFC 3/3] arm64: dts: qcom: ipq8074: add remoteproc nodes Date: Tue, 9 Dec 2025 18:37:25 -0600 Message-ID: <20251210003729.3909663-4-mr.nuke.me@gmail.com> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20251210003729.3909663-1-mr.nuke.me@gmail.com> References: <20251210003729.3909663-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" Add the nodes for the WCSS remoteproc loader on IPQ8074, so that there a use case for the DT bindings. GCC_WCSSAON_RESET is not implemented by the GCC reset controller, so use a placeholder value for now. Leave the node disabled so that remoteproc doesn't start up with the missing reset. Signed-off-by: Alexandru Gagniuc --- arch/arm64/boot/dts/qcom/ipq8074.dtsi | 79 +++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/ipq8074.dtsi b/arch/arm64/boot/dts/qc= om/ipq8074.dtsi index 256e12cf6d544..86369fa680553 100644 --- a/arch/arm64/boot/dts/qcom/ipq8074.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq8074.dtsi @@ -108,6 +108,11 @@ memory@4ac00000 { reg =3D <0x0 0x4ac00000 0x0 0x400000>; no-map; }; + + q6_region: wcnss@4b000000 { + reg =3D <0x0 0x4b000000 0x0 0x03700000>; + no-map; + }; }; =20 firmware { @@ -390,6 +395,11 @@ tcsr: syscon@1937000 { reg =3D <0x01937000 0x21000>; }; =20 + tcsr_q6: syscon@1945000 { + compatible =3D "qcom,tcsr-ipq8074", "syscon"; + reg =3D <0x01945000 0xe000>; + }; + spmi_bus: spmi@200f000 { compatible =3D "qcom,spmi-pmic-arb"; reg =3D <0x0200f000 0x001000>, @@ -1003,6 +1013,50 @@ pcie@0 { ranges; }; }; + + q6v5_wcss: remoteproc@cd00000 { + compatible =3D "qcom,ipq8074-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 0>, + <&wcss_smp2p_in 1 0>, + <&wcss_smp2p_in 2 0>, + <&wcss_smp2p_in 3 0>; + interrupt-names =3D "wdog", + "fatal", + "ready", + "handover", + "stop-ack"; + + resets =3D <&gcc 0xffff>, /* GCC_WCSSAON_RESET */ + <&gcc GCC_WCSS_BCR>, + <&gcc GCC_WCSS_Q6_BCR>; + + reset-names =3D "wcss_aon_reset", + "wcss_reset", + "wcss_q6_reset"; + + memory-region =3D <&q6_region>; + qcom,halt-regs =3D <&tcsr_q6 0xa000 0xd000 0x0>; + + qcom,smem-states =3D <&wcss_smp2p_out 0>, + <&wcss_smp2p_out 1>; + qcom,smem-state-names =3D "shutdown", + "stop"; + + status =3D "disabled"; + + glink-edge { + interrupts =3D ; + label =3D "rtr"; + qcom,remote-pid =3D <1>; + mboxes =3D <&apcs_glb 8>; + }; + }; }; =20 timer { @@ -1182,4 +1236,29 @@ wcss-phyb1-crit { }; }; }; + + wcss: smp2p-wcss { + compatible =3D "qcom,smp2p"; + qcom,smem =3D <435>, <428>; + + interrupt-parent =3D <&intc>; + interrupts =3D ; + + mboxes =3D <&apcs_glb 9>; + + qcom,local-pid =3D <0>; + qcom,remote-pid =3D <1>; + + wcss_smp2p_out: master-kernel { + qcom,entry-name =3D "master-kernel"; + #qcom,smem-state-cells =3D <1>; + }; + + wcss_smp2p_in: slave-kernel { + qcom,entry-name =3D "slave-kernel"; + + interrupt-controller; + #interrupt-cells =3D <2>; + }; + }; }; --=20 2.45.1