linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL
@ 2022-11-24 18:43 Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 01/15] arm64: dts: qcom: msm8996: drop address/size cells from smd-edge Krzysztof Kozlowski
                   ` (15 more replies)
  0 siblings, 16 replies; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Changes since v2
================
1. Allow only one or two clocks, after dropping clocks related to PIL binding.
2. Drop if:then: for the clock and put it directly under properties
3. Merge two if:then: clauses for setting interrupts.
4. New patches: DTS fixes, qcom,adsp: drop resets and qcom,halt-regs,
   qcom,qcs404-pas, qcom,sc7180-pas and last msm8996-slpi-pil fix.

Changes since v1
================
1. Keep resets, reset-names, qcom,qmp and qcom,halt-regs in qcom,adsp, because
   they are not shared with most of PAS bindings.
2. Add firmware-name to examples.
3. New patches: qcom,sc8180x-pas and qcom,sdx55-pas.

Description
===========
The Qualcomm PAS/PIL (qcom,adsp.yaml) bindings grew considerably with huge
amount of if:then:else blocks and 40 compatibles (still growing).   These
if:then:else blocks constrain clocks, power-domains and interrupt per variants.
Adding new variants is now tricky - it's easy to forget to add variant to one
if:then: clause.

Split the bindings into reusable schema and per-soc bindings, groupping them
when applicable.

This part is finished, but more and more compatibles should be moved out of
qcom,adsp.yaml, eventually dropping the file.

Best regards,
Krzysztof

Krzysztof Kozlowski (15):
  arm64: dts: qcom: msm8996: drop address/size cells from smd-edge
  arm64: dts: qcom: qcs404: align CDSP PAS node with bindings
  arm64: dts: qcom: sc7180: align MPSS PAS node with bindings
  arm64: dts: qcom: sc7280: align MPSS PAS node with bindings
  dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs
  dt-bindings: remoteproc: qcom,adsp: split common part
  dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file
  dt-bindings: remoteproc: qcom,sm8150-pas: split into separate file
  dt-bindings: remoteproc: qcom,sm6350-pas: split into separate file
  dt-bindings: remoteproc: qcom,sc8280xp-pas: split into separate file
  dt-bindings: remoteproc: qcom,sc8180x-pas: split into separate file
  dt-bindings: remoteproc: qcom,sdx55-pas: split into separate file
  dt-bindings: remoteproc: qcom,qcs404-pas: split into separate file
  dt-bindings: remoteproc: qcom,sc7180-pas: split into separate file
  dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks

 .../bindings/remoteproc/qcom,adsp.yaml        | 414 +-----------------
 .../bindings/remoteproc/qcom,pas-common.yaml  |  97 ++++
 .../bindings/remoteproc/qcom,qcs404-pas.yaml  |  86 ++++
 .../bindings/remoteproc/qcom,sc7180-pas.yaml  | 125 ++++++
 .../bindings/remoteproc/qcom,sc8180x-pas.yaml |  87 ++++
 .../remoteproc/qcom,sc8280xp-pas.yaml         | 139 ++++++
 .../bindings/remoteproc/qcom,sdx55-pas.yaml   | 101 +++++
 .../bindings/remoteproc/qcom,sm6350-pas.yaml  | 159 +++++++
 .../bindings/remoteproc/qcom,sm8150-pas.yaml  | 166 +++++++
 .../bindings/remoteproc/qcom,sm8350-pas.yaml  | 174 ++++++++
 arch/arm64/boot/dts/qcom/msm8996.dtsi         |   3 +-
 arch/arm64/boot/dts/qcom/qcs404.dtsi          |  46 +-
 arch/arm64/boot/dts/qcom/sc7180-idp.dts       |  18 +
 arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi  |  18 +
 arch/arm64/boot/dts/qcom/sc7180.dtsi          |  20 +-
 .../dts/qcom/sc7280-herobrine-lte-sku.dtsi    |  17 +
 arch/arm64/boot/dts/qcom/sc7280.dtsi          |  16 +-
 17 files changed, 1221 insertions(+), 465 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc8180x-pas.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml

-- 
2.34.1


^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH v3 01/15] arm64: dts: qcom: msm8996: drop address/size cells from smd-edge
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 02/15] arm64: dts: qcom: qcs404: align CDSP PAS node with bindings Krzysztof Kozlowski
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

The smd-edge node does not have children with unit addresses:

  qcom/msm8996-oneplus3.dtb: remoteproc@9300000: smd-edge: '#address-cells', '#size-cells' do not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch.
---
 arch/arm64/boot/dts/qcom/msm8996.dtsi | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi
index d31464204f69..cc65f52bb80f 100644
--- a/arch/arm64/boot/dts/qcom/msm8996.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi
@@ -3426,8 +3426,7 @@ smd-edge {
 				mboxes = <&apcs_glb 8>;
 				qcom,smd-edge = <1>;
 				qcom,remote-pid = <2>;
-				#address-cells = <1>;
-				#size-cells = <0>;
+
 				apr {
 					power-domains = <&gcc HLOS1_VOTE_LPASS_ADSP_GDSC>;
 					compatible = "qcom,apr-v2";
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 02/15] arm64: dts: qcom: qcs404: align CDSP PAS node with bindings
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 01/15] arm64: dts: qcom: msm8996: drop address/size cells from smd-edge Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 03/15] arm64: dts: qcom: sc7180: align MPSS " Krzysztof Kozlowski
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

The QCS404 CDSP remote processor can be brought to life using two
different bindings:
1. qcom,qcs404-cdsp-pas - currently used in DTSI.
2. qcom,qcs404-cdsp-pil.

Comment out the properties related to qcom,qcs404-cdsp-pil
(qcom,halt-regs, resets and additional clocks), to silence DT schema
warnings.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch.
---
 arch/arm64/boot/dts/qcom/qcs404.dtsi | 46 +++++++++++++++-------------
 1 file changed, 25 insertions(+), 21 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/qcs404.dtsi b/arch/arm64/boot/dts/qcom/qcs404.dtsi
index a5324eecb50a..78a8ab29a0a9 100644
--- a/arch/arm64/boot/dts/qcom/qcs404.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs404.dtsi
@@ -485,27 +485,31 @@ remoteproc_cdsp: remoteproc@b00000 {
 			interrupt-names = "wdog", "fatal", "ready",
 					  "handover", "stop-ack";
 
-			clocks = <&xo_board>,
-				 <&gcc GCC_CDSP_CFG_AHB_CLK>,
-				 <&gcc GCC_CDSP_TBU_CLK>,
-				 <&gcc GCC_BIMC_CDSP_CLK>,
-				 <&turingcc TURING_WRAPPER_AON_CLK>,
-				 <&turingcc TURING_Q6SS_AHBS_AON_CLK>,
-				 <&turingcc TURING_Q6SS_AHBM_AON_CLK>,
-				 <&turingcc TURING_Q6SS_Q6_AXIM_CLK>;
-			clock-names = "xo",
-				      "sway",
-				      "tbu",
-				      "bimc",
-				      "ahb_aon",
-				      "q6ss_slave",
-				      "q6ss_master",
-				      "q6_axim";
-
-			resets = <&gcc GCC_CDSP_RESTART>;
-			reset-names = "restart";
-
-			qcom,halt-regs = <&tcsr 0x19004>;
+			clocks = <&xo_board>;
+			clock-names = "xo";
+
+			/*
+			 * If the node was using the PIL binding, then include properties:
+			 * clocks = <&xo_board>,
+			 *          <&gcc GCC_CDSP_CFG_AHB_CLK>,
+			 *          <&gcc GCC_CDSP_TBU_CLK>,
+			 *          <&gcc GCC_BIMC_CDSP_CLK>,
+			 *          <&turingcc TURING_WRAPPER_AON_CLK>,
+			 *          <&turingcc TURING_Q6SS_AHBS_AON_CLK>,
+			 *          <&turingcc TURING_Q6SS_AHBM_AON_CLK>,
+			 *          <&turingcc TURING_Q6SS_Q6_AXIM_CLK>;
+			 * clock-names = "xo",
+			 *               "sway",
+			 *               "tbu",
+			 *               "bimc",
+			 *               "ahb_aon",
+			 *               "q6ss_slave",
+			 *               "q6ss_master",
+			 *               "q6_axim";
+			 * resets = <&gcc GCC_CDSP_RESTART>;
+			 * reset-names = "restart";
+			 * qcom,halt-regs = <&tcsr 0x19004>;
+			 */
 
 			memory-region = <&cdsp_fw_mem>;
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 03/15] arm64: dts: qcom: sc7180: align MPSS PAS node with bindings
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 01/15] arm64: dts: qcom: msm8996: drop address/size cells from smd-edge Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 02/15] arm64: dts: qcom: qcs404: align CDSP PAS node with bindings Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 04/15] arm64: dts: qcom: sc7280: " Krzysztof Kozlowski
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

The SC7180 MPSS/MSS remote processor can be brought to life using two
different bindings:
1. qcom,sc7180-mpss-pas - currently used in DTSI
2. qcom,sc7180-mss-pil

Move the properties related to qcom,sc7180-mss-pil (qcom,halt-regs,
qcom,spare-regs, resets, additional clocks and regs) to specific boards
using the PIL, to silence DT schema warnings.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch.
---
 arch/arm64/boot/dts/qcom/sc7180-idp.dts      | 18 ++++++++++++++++++
 arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 18 ++++++++++++++++++
 arch/arm64/boot/dts/qcom/sc7180.dtsi         | 20 +++-----------------
 3 files changed, 39 insertions(+), 17 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sc7180-idp.dts b/arch/arm64/boot/dts/qcom/sc7180-idp.dts
index 70fd9ff8dfa2..b27b5f0e2b6b 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-idp.dts
+++ b/arch/arm64/boot/dts/qcom/sc7180-idp.dts
@@ -370,8 +370,26 @@ &qupv3_id_1 {
 &remoteproc_mpss {
 	status = "okay";
 	compatible = "qcom,sc7180-mss-pil";
+	reg = <0 0x04080000 0 0x4040>, <0 0x04180000 0 0x48>;
+	reg-names = "qdsp6", "rmb";
+
+	clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
+		 <&gcc GCC_MSS_Q6_MEMNOC_AXI_CLK>,
+		 <&gcc GCC_MSS_NAV_AXI_CLK>,
+		 <&gcc GCC_MSS_SNOC_AXI_CLK>,
+		 <&gcc GCC_MSS_MFAB_AXIS_CLK>,
+		 <&rpmhcc RPMH_CXO_CLK>;
+	clock-names = "iface", "bus", "nav", "snoc_axi", "mnoc_axi", "xo";
+
 	iommus = <&apps_smmu 0x461 0x0>, <&apps_smmu 0x444 0x3>;
 	memory-region = <&mba_mem &mpss_mem>;
+
+	resets = <&aoss_reset AOSS_CC_MSS_RESTART>,
+		 <&pdc_reset PDC_MODEM_SYNC_RESET>;
+	reset-names = "mss_restart", "pdc_reset";
+
+	qcom,halt-regs = <&tcsr_regs_1 0x3000 0x5000 0x4000>;
+	qcom,spare-regs = <&tcsr_regs_2 0xb3e4>;
 };
 
 &sdhc_1 {
diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
index 65601bea0797..d968fbce4b89 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
@@ -851,12 +851,30 @@ &qupv3_id_1 {
 &remoteproc_mpss {
 	status = "okay";
 	compatible = "qcom,sc7180-mss-pil";
+	reg = <0 0x04080000 0 0x4040>, <0 0x04180000 0 0x48>;
+	reg-names = "qdsp6", "rmb";
+
+	clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
+		 <&gcc GCC_MSS_Q6_MEMNOC_AXI_CLK>,
+		 <&gcc GCC_MSS_NAV_AXI_CLK>,
+		 <&gcc GCC_MSS_SNOC_AXI_CLK>,
+		 <&gcc GCC_MSS_MFAB_AXIS_CLK>,
+		 <&rpmhcc RPMH_CXO_CLK>;
+	clock-names = "iface", "bus", "nav", "snoc_axi", "mnoc_axi", "xo";
+
 	iommus = <&apps_smmu 0x461 0x0>, <&apps_smmu 0x444 0x3>;
 	memory-region = <&mba_mem &mpss_mem>;
 
 	/* This gets overridden for SKUs with LTE support. */
 	firmware-name = "qcom/sc7180-trogdor/modem-nolte/mba.mbn",
 			"qcom/sc7180-trogdor/modem-nolte/qdsp6sw.mbn";
+
+	resets = <&aoss_reset AOSS_CC_MSS_RESTART>,
+		 <&pdc_reset PDC_MODEM_SYNC_RESET>;
+	reset-names = "mss_restart", "pdc_reset";
+
+	qcom,halt-regs = <&tcsr_regs_1 0x3000 0x5000 0x4000>;
+	qcom,spare-regs = <&tcsr_regs_2 0xb3e4>;
 };
 
 &sdhc_1 {
diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
index ea886cf08b4d..5be978c44c0d 100644
--- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
@@ -1929,8 +1929,7 @@ pri_mi2s_mclk_active: pri-mi2s-mclk-active-state {
 
 		remoteproc_mpss: remoteproc@4080000 {
 			compatible = "qcom,sc7180-mpss-pas";
-			reg = <0 0x04080000 0 0x4040>, <0 0x04180000 0 0x48>;
-			reg-names = "qdsp6", "rmb";
+			reg = <0 0x04080000 0 0x4040>;
 
 			interrupts-extended = <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>,
 					      <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
@@ -1941,14 +1940,8 @@ remoteproc_mpss: remoteproc@4080000 {
 			interrupt-names = "wdog", "fatal", "ready", "handover",
 					  "stop-ack", "shutdown-ack";
 
-			clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
-				 <&gcc GCC_MSS_Q6_MEMNOC_AXI_CLK>,
-				 <&gcc GCC_MSS_NAV_AXI_CLK>,
-				 <&gcc GCC_MSS_SNOC_AXI_CLK>,
-				 <&gcc GCC_MSS_MFAB_AXIS_CLK>,
-				 <&rpmhcc RPMH_CXO_CLK>;
-			clock-names = "iface", "bus", "nav", "snoc_axi",
-				      "mnoc_axi", "xo";
+			clocks = <&rpmhcc RPMH_CXO_CLK>;
+			clock-names = "xo";
 
 			power-domains = <&rpmhpd SC7180_CX>,
 					<&rpmhpd SC7180_MX>,
@@ -1962,13 +1955,6 @@ remoteproc_mpss: remoteproc@4080000 {
 			qcom,smem-states = <&modem_smp2p_out 0>;
 			qcom,smem-state-names = "stop";
 
-			resets = <&aoss_reset AOSS_CC_MSS_RESTART>,
-				 <&pdc_reset PDC_MODEM_SYNC_RESET>;
-			reset-names = "mss_restart", "pdc_reset";
-
-			qcom,halt-regs = <&tcsr_regs_1 0x3000 0x5000 0x4000>;
-			qcom,spare-regs = <&tcsr_regs_2 0xb3e4>;
-
 			status = "disabled";
 
 			glink-edge {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 04/15] arm64: dts: qcom: sc7280: align MPSS PAS node with bindings
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 03/15] arm64: dts: qcom: sc7180: align MPSS " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-11-24 18:43 ` [PATCH v3 05/15] dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs Krzysztof Kozlowski
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

The SC7180 MPSS/MSS remote processor can be brought to life using two
different bindings:
1. qcom,sc7280-mpss-pas - currently used in DTSI
2. qcom,sc7280-mss-pil

Move the properties related to qcom,sc7180-mss-pil (qcom,halt-regs,
qcom,ext-regs, qcom,qaccept-regs, resets and additional clocks) to
specific board using the PIL, to silence DT schema warnings.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch.
---
 .../boot/dts/qcom/sc7280-herobrine-lte-sku.dtsi | 17 +++++++++++++++++
 arch/arm64/boot/dts/qcom/sc7280.dtsi            | 16 ++--------------
 2 files changed, 19 insertions(+), 14 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-lte-sku.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-lte-sku.dtsi
index ad66e5e9db4e..bf522a64b172 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-lte-sku.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-lte-sku.dtsi
@@ -22,11 +22,28 @@ mba_mem: memory@9c700000 {
 
 &remoteproc_mpss {
 	compatible = "qcom,sc7280-mss-pil";
+
+	clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
+		 <&gcc GCC_MSS_OFFLINE_AXI_CLK>,
+		 <&gcc GCC_MSS_SNOC_AXI_CLK>,
+		 <&rpmhcc RPMH_PKA_CLK>,
+		 <&rpmhcc RPMH_CXO_CLK>;
+	clock-names = "iface", "offline", "snoc_axi", "pka", "xo";
+
 	iommus = <&apps_smmu 0x124 0x0>, <&apps_smmu 0x488 0x7>;
 	interconnects = <&mc_virt MASTER_LLCC 0 &mc_virt SLAVE_EBI1 0>;
 	memory-region = <&mba_mem>, <&mpss_mem>;
 	firmware-name = "qcom/sc7280-herobrine/modem/mba.mbn",
 			"qcom/sc7280-herobrine/modem/qdsp6sw.mbn";
+
+	resets = <&aoss_reset AOSS_CC_MSS_RESTART>,
+		 <&pdc_reset PDC_MODEM_SYNC_RESET>;
+	reset-names = "mss_restart", "pdc_reset";
+
+	qcom,halt-regs = <&tcsr_1 0x3000 0x5000 0x8000 0x13000>;
+	qcom,ext-regs = <&tcsr_2 0x10000 0x10004 &tcsr_1 0x6004 0x6008>;
+	qcom,qaccept-regs = <&tcsr_1 0x3030 0x3040 0x3020>;
+
 	status = "okay";
 };
 
diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
index 448879d3d5cd..da3775677640 100644
--- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
@@ -2751,12 +2751,8 @@ remoteproc_mpss: remoteproc@4080000 {
 			interrupt-names = "wdog", "fatal", "ready", "handover",
 					  "stop-ack", "shutdown-ack";
 
-			clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
-				 <&gcc GCC_MSS_OFFLINE_AXI_CLK>,
-				 <&gcc GCC_MSS_SNOC_AXI_CLK>,
-				 <&rpmhcc RPMH_PKA_CLK>,
-				 <&rpmhcc RPMH_CXO_CLK>;
-			clock-names = "iface", "offline", "snoc_axi", "pka", "xo";
+			clocks = <&rpmhcc RPMH_CXO_CLK>;
+			clock-names = "xo";
 
 			power-domains = <&rpmhpd SC7280_CX>,
 					<&rpmhpd SC7280_MSS>;
@@ -2769,14 +2765,6 @@ remoteproc_mpss: remoteproc@4080000 {
 			qcom,smem-states = <&modem_smp2p_out 0>;
 			qcom,smem-state-names = "stop";
 
-			resets = <&aoss_reset AOSS_CC_MSS_RESTART>,
-				 <&pdc_reset PDC_MODEM_SYNC_RESET>;
-			reset-names = "mss_restart", "pdc_reset";
-
-			qcom,halt-regs = <&tcsr_1 0x3000 0x5000 0x8000 0x13000>;
-			qcom,ext-regs = <&tcsr_2 0x10000 0x10004 &tcsr_1 0x6004 0x6008>;
-			qcom,qaccept-regs = <&tcsr_1 0x3030 0x3040 0x3020>;
-
 			status = "disabled";
 
 			glink-edge {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 05/15] dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 04/15] arm64: dts: qcom: sc7280: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:44   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 06/15] dt-bindings: remoteproc: qcom,adsp: split common part Krzysztof Kozlowski
                   ` (10 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Some remote processors (e.g. QCS404 CDSP, SC7180 MPSS/MSS) can be brought
to life using two different bindings:
1. PIL (Peripheral Image Loader)
2. PAS (Peripheral Authentication Service)

They still describe the same hardware - firmware load for remote
processor - but use different methods to communicate with that
processor.

For these SoCs, the qcom,adsp.yaml bindings were describing the PAS
method, however for easier customization of board DTS, the bindings
combined additional properties from PIL: reset lines, qcom,halt-regs and
additional clocks.  The devices and Linux kernel drivers, when
instantiated as PAS, do not use these properties, so drop them from the
bindings.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch
---
 .../bindings/remoteproc/qcom,adsp.yaml        | 113 +-----------------
 1 file changed, 4 insertions(+), 109 deletions(-)

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index db9e0f0c2bea..e3e617315aef 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -61,11 +61,11 @@ properties:
 
   clocks:
     minItems: 1
-    maxItems: 8
+    maxItems: 2
 
   clock-names:
     minItems: 1
-    maxItems: 8
+    maxItems: 2
 
   interconnects:
     maxItems: 1
@@ -90,14 +90,6 @@ properties:
       - const: stop-ack
       - const: shutdown-ack
 
-  resets:
-    minItems: 1
-    maxItems: 3
-
-  reset-names:
-    minItems: 1
-    maxItems: 3
-
   cx-supply:
     description: Phandle to the CX regulator
 
@@ -135,18 +127,6 @@ properties:
     items:
       - const: stop
 
-  qcom,halt-regs:
-    $ref: /schemas/types.yaml#/definitions/phandle-array
-    items:
-      - items:
-          - description: Phandle reference to a syscon representing TCSR
-          - description: offsets within syscon for q6 halt registers
-          - description: offsets within syscon for modem halt registers
-          - description: offsets within syscon for nc halt registers
-    description:
-      Phandle reference to a syscon representing TCSR followed by the
-      three offsets within syscon for q6, modem and nc halt registers.
-
   smd-edge:
     $ref: /schemas/remoteproc/qcom,smd-edge.yaml#
     description:
@@ -184,7 +164,9 @@ allOf:
               - qcom,msm8996-slpi-pil
               - qcom,msm8998-adsp-pas
               - qcom,qcs404-adsp-pas
+              - qcom,qcs404-cdsp-pas
               - qcom,qcs404-wcss-pas
+              - qcom,sc7180-mpss-pas
               - qcom,sc7280-mpss-pas
               - qcom,sc8180x-adsp-pas
               - qcom,sc8180x-cdsp-pas
@@ -238,60 +220,6 @@ allOf:
             - const: xo
             - const: aggre2
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,qcs404-cdsp-pas
-    then:
-      properties:
-        clocks:
-          items:
-            - description: XO clock
-            - description: SWAY clock
-            - description: TBU clock
-            - description: BIMC clock
-            - description: AHB AON clock
-            - description: Q6SS SLAVE clock
-            - description: Q6SS MASTER clock
-            - description: Q6 AXIM clock
-        clock-names:
-          items:
-            - const: xo
-            - const: sway
-            - const: tbu
-            - const: bimc
-            - const: ahb_aon
-            - const: q6ss_slave
-            - const: q6ss_master
-            - const: q6_axim
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sc7180-mpss-pas
-    then:
-      properties:
-        clocks:
-          items:
-            - description: XO clock
-            - description: IFACE clock
-            - description: BUS clock
-            - description: NAC clock
-            - description: SNOC AXI clock
-            - description: MNOC AXI clock
-        clock-names:
-          items:
-            - const: xo
-            - const: iface
-            - const: bus
-            - const: nav
-            - const: snoc_axi
-            - const: mnoc_axi
-
   - if:
       properties:
         compatible:
@@ -520,39 +448,6 @@ allOf:
           items:
             - const: nsp
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,qcs404-cdsp-pas
-    then:
-      properties:
-        resets:
-          items:
-            - description: CDSP restart
-        reset-names:
-          items:
-            - const: restart
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sc7180-mpss-pas
-              - qcom,sc7280-mpss-pas
-    then:
-      properties:
-        resets:
-          items:
-            - description: MSS restart
-            - description: PDC reset
-        reset-names:
-          items:
-            - const: mss_restart
-            - const: pdc_reset
-
   - if:
       properties:
         compatible:
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 06/15] dt-bindings: remoteproc: qcom,adsp: split common part
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (4 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 05/15] dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:44   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 07/15] dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file Krzysztof Kozlowski
                   ` (9 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split common part of Qualcomm SoC Peripheral Authentication Service
bindings into a re-usable schema file.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. Allow only one or two clocks, after dropping clocks related to PIL binding.

Changes since v1:
1. Keep resets, reset-names, qcom,qmp and qcom,halt-regs in qcom,adsp,
   because they are not shared with most of PAS bindings.
---
 .../bindings/remoteproc/qcom,adsp.yaml        | 81 +---------------
 .../bindings/remoteproc/qcom,pas-common.yaml  | 97 +++++++++++++++++++
 2 files changed, 99 insertions(+), 79 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index e3e617315aef..596149f71485 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -59,100 +59,23 @@ properties:
   reg:
     maxItems: 1
 
-  clocks:
-    minItems: 1
-    maxItems: 2
-
-  clock-names:
-    minItems: 1
-    maxItems: 2
-
-  interconnects:
-    maxItems: 1
-
-  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
-
   cx-supply:
     description: Phandle to the CX regulator
 
   px-supply:
     description: Phandle to the PX regulator
 
-  power-domains:
-    minItems: 1
-    maxItems: 3
-
-  power-domain-names:
-    minItems: 1
-    maxItems: 3
-
-  firmware-name:
-    $ref: /schemas/types.yaml#/definitions/string
-    description: Firmware name for the Hexagon core
-
-  memory-region:
-    maxItems: 1
-    description: Reference to the reserved-memory for the Hexagon core
-
   qcom,qmp:
     $ref: /schemas/types.yaml#/definitions/phandle
     description: Reference to the AOSS side-channel message RAM.
 
-  qcom,smem-states:
-    $ref: /schemas/types.yaml#/definitions/phandle-array
-    description: States used by the AP to signal the Hexagon core
-    items:
-      - description: Stop the modem
-
-  qcom,smem-state-names:
-    description: The names of the state bits used for SMP2P output
-    items:
-      - const: stop
-
-  smd-edge:
-    $ref: /schemas/remoteproc/qcom,smd-edge.yaml#
-    description:
-      Qualcomm Shared Memory subnode which represents communication edge,
-      channels and devices related to the ADSP.
-    unevaluatedProperties: false
-
-  glink-edge:
-    $ref: /schemas/remoteproc/qcom,glink-edge.yaml#
-    description:
-      Qualcomm G-Link subnode which represents communication edge, channels
-      and devices related to the ADSP.
-
 required:
   - compatible
-  - clocks
-  - clock-names
-  - interrupts
-  - interrupt-names
-  - memory-region
-  - qcom,smem-states
-  - qcom,smem-state-names
 
-additionalProperties: false
+unevaluatedProperties: false
 
 allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
   - if:
       properties:
         compatible:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
new file mode 100644
index 000000000000..1d5e01c8d8bc
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
@@ -0,0 +1,97 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,pas-common.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Peripheral Authentication Service Common Properties
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Common properties of Qualcomm SoCs Peripheral Authentication Service.
+
+properties:
+  clocks:
+    minItems: 1
+    maxItems: 2
+
+  clock-names:
+    minItems: 1
+    maxItems: 2
+
+  interconnects:
+    maxItems: 1
+
+  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
+
+  power-domains:
+    minItems: 1
+    maxItems: 3
+
+  power-domain-names:
+    minItems: 1
+    maxItems: 3
+
+  firmware-name:
+    $ref: /schemas/types.yaml#/definitions/string
+    description: Firmware name for the Hexagon core
+
+  memory-region:
+    maxItems: 1
+    description: Reference to the reserved-memory for the Hexagon core
+
+  qcom,smem-states:
+    $ref: /schemas/types.yaml#/definitions/phandle-array
+    description: States used by the AP to signal the Hexagon core
+    items:
+      - description: Stop the modem
+
+  qcom,smem-state-names:
+    description: The names of the state bits used for SMP2P output
+    items:
+      - const: stop
+
+  smd-edge:
+    $ref: /schemas/remoteproc/qcom,smd-edge.yaml#
+    description:
+      Qualcomm Shared Memory subnode which represents communication edge,
+      channels and devices related to the ADSP.
+    unevaluatedProperties: false
+
+  glink-edge:
+    $ref: /schemas/remoteproc/qcom,glink-edge.yaml#
+    description:
+      Qualcomm G-Link subnode which represents communication edge, channels
+      and devices related to the ADSP.
+    unevaluatedProperties: false
+
+required:
+  - clocks
+  - clock-names
+  - interrupts
+  - interrupt-names
+  - memory-region
+  - qcom,smem-states
+  - qcom,smem-state-names
+
+additionalProperties: true
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 07/15] dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (5 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 06/15] dt-bindings: remoteproc: qcom,adsp: split common part Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:45   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: " Krzysztof Kozlowski
                   ` (8 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split SM8350 and SM8450 remote processor Peripheral Authentication
Service bindings into their own file to reduce complexity and make
maintenance easier.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. Drop if:then: for the clock and put it directly under properties.
2. Merge two if:then: clauses for setting interrupts.

Changes since v1:
1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
2. Add firmware-name to example.
---
 .../bindings/remoteproc/qcom,adsp.yaml        |  48 -----
 .../bindings/remoteproc/qcom,sm8350-pas.yaml  | 174 ++++++++++++++++++
 2 files changed, 174 insertions(+), 48 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 596149f71485..67941e79a4a0 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -47,14 +47,6 @@ properties:
       - qcom,sm8250-adsp-pas
       - qcom,sm8250-cdsp-pas
       - qcom,sm8250-slpi-pas
-      - qcom,sm8350-adsp-pas
-      - qcom,sm8350-cdsp-pas
-      - qcom,sm8350-slpi-pas
-      - qcom,sm8350-mpss-pas
-      - qcom,sm8450-adsp-pas
-      - qcom,sm8450-cdsp-pas
-      - qcom,sm8450-mpss-pas
-      - qcom,sm8450-slpi-pas
 
   reg:
     maxItems: 1
@@ -109,14 +101,6 @@ allOf:
               - qcom,sm8250-adsp-pas
               - qcom,sm8250-cdsp-pas
               - qcom,sm8250-slpi-pas
-              - qcom,sm8350-adsp-pas
-              - qcom,sm8350-cdsp-pas
-              - qcom,sm8350-slpi-pas
-              - qcom,sm8350-mpss-pas
-              - qcom,sm8450-adsp-pas
-              - qcom,sm8450-cdsp-pas
-              - qcom,sm8450-slpi-pas
-              - qcom,sm8450-mpss-pas
     then:
       properties:
         clocks:
@@ -172,12 +156,6 @@ allOf:
               - qcom,sm8250-adsp-pas
               - qcom,sm8250-cdsp-pas
               - qcom,sm8250-slpi-pas
-              - qcom,sm8350-adsp-pas
-              - qcom,sm8350-cdsp-pas
-              - qcom,sm8350-slpi-pas
-              - qcom,sm8450-adsp-pas
-              - qcom,sm8450-cdsp-pas
-              - qcom,sm8450-slpi-pas
     then:
       properties:
         interrupts:
@@ -196,8 +174,6 @@ allOf:
               - qcom,sdx55-mpss-pas
               - qcom,sm6350-mpss-pas
               - qcom,sm8150-mpss-pas
-              - qcom,sm8350-mpss-pas
-              - qcom,sm8450-mpss-pas
     then:
       properties:
         interrupts:
@@ -297,8 +273,6 @@ allOf:
               - qcom,sdx55-mpss-pas
               - qcom,sm6350-mpss-pas
               - qcom,sm8150-mpss-pas
-              - qcom,sm8350-mpss-pas
-              - qcom,sm8450-mpss-pas
     then:
       properties:
         power-domains:
@@ -322,10 +296,6 @@ allOf:
               - qcom,sm8150-slpi-pas
               - qcom,sm8250-adsp-pas
               - qcom,sm8250-slpi-pas
-              - qcom,sm8350-adsp-pas
-              - qcom,sm8350-slpi-pas
-              - qcom,sm8450-adsp-pas
-              - qcom,sm8450-slpi-pas
     then:
       properties:
         power-domains:
@@ -337,24 +307,6 @@ allOf:
             - const: lcx
             - const: lmx
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sm8350-cdsp-pas
-              - qcom,sm8450-cdsp-pas
-    then:
-      properties:
-        power-domains:
-          items:
-            - description: CX power domain
-            - description: MXC power domain
-        power-domain-names:
-          items:
-            - const: cx
-            - const: mxc
-
   - if:
       properties:
         compatible:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml
new file mode 100644
index 000000000000..853f97d6879f
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml
@@ -0,0 +1,174 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,sm8350-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SM8350/SM8450 Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm SM8350/SM8450 SoC Peripheral Authentication Service loads and boots
+  firmware on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,sm8350-adsp-pas
+      - qcom,sm8350-cdsp-pas
+      - qcom,sm8350-slpi-pas
+      - qcom,sm8350-mpss-pas
+      - qcom,sm8450-adsp-pas
+      - qcom,sm8450-cdsp-pas
+      - qcom,sm8450-mpss-pas
+      - qcom,sm8450-slpi-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8350-adsp-pas
+            - qcom,sm8350-cdsp-pas
+            - qcom,sm8350-slpi-pas
+            - qcom,sm8450-adsp-pas
+            - qcom,sm8450-cdsp-pas
+            - qcom,sm8450-slpi-pas
+    then:
+      properties:
+        interrupts:
+          maxItems: 5
+        interrupt-names:
+          maxItems: 5
+    else:
+      properties:
+        interrupts:
+          minItems: 6
+        interrupt-names:
+          minItems: 6
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8350-mpss-pas
+            - qcom,sm8450-mpss-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: CX power domain
+            - description: MSS power domain
+        power-domain-names:
+          items:
+            - const: cx
+            - const: mss
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8350-adsp-pas
+            - qcom,sm8350-slpi-pas
+            - qcom,sm8450-adsp-pas
+            - qcom,sm8450-slpi-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: LCX power domain
+            - description: LMX power domain
+        power-domain-names:
+          items:
+            - const: lcx
+            - const: lmx
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8350-cdsp-pas
+            - qcom,sm8450-cdsp-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: CX power domain
+            - description: MXC power domain
+        power-domain-names:
+          items:
+            - const: cx
+            - const: mxc
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,rpmh.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/mailbox/qcom-ipcc.h>
+    #include <dt-bindings/power/qcom-rpmpd.h>
+
+    remoteproc@30000000 {
+        compatible = "qcom,sm8450-adsp-pas";
+        reg = <0x030000000 0x100>;
+
+        clocks = <&rpmhcc RPMH_CXO_CLK>;
+        clock-names = "xo";
+
+        firmware-name = "qcom/sm8450/adsp.mbn";
+
+        interrupts-extended = <&pdc 6 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>;
+        interrupt-names = "wdog", "fatal", "ready",
+                          "handover", "stop-ack";
+
+        memory-region = <&adsp_mem>;
+
+        power-domains = <&rpmhpd SM8450_LCX>,
+                        <&rpmhpd SM8450_LMX>;
+        power-domain-names = "lcx", "lmx";
+
+        qcom,qmp = <&aoss_qmp>;
+        qcom,smem-states = <&smp2p_adsp_out 0>;
+        qcom,smem-state-names = "stop";
+
+        glink-edge {
+            interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
+                                         IPCC_MPROC_SIGNAL_GLINK_QMP
+                                         IRQ_TYPE_EDGE_RISING>;
+            mboxes = <&ipcc IPCC_CLIENT_LPASS IPCC_MPROC_SIGNAL_GLINK_QMP>;
+
+            label = "lpass";
+            qcom,remote-pid = <2>;
+
+            /* ... */
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (6 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 07/15] dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:46   ` Rob Herring
  2022-12-05 19:49   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 09/15] dt-bindings: remoteproc: qcom,sm6350-pas: " Krzysztof Kozlowski
                   ` (7 subsequent siblings)
  15 siblings, 2 replies; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split SM8150 and SM8250 remote processor Peripheral Authentication
Service bindings into their own file to reduce complexity and make
maintenance easier.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. Drop if:then: for the clock and put it directly under properties.
2. Merge two if:then: clauses for setting interrupts.

Changes since v1:
1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
2. Add firmware-name to example.
---
 .../bindings/remoteproc/qcom,adsp.yaml        |  27 ---
 .../bindings/remoteproc/qcom,sm8150-pas.yaml  | 166 ++++++++++++++++++
 2 files changed, 166 insertions(+), 27 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 67941e79a4a0..e8d66eefd522 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -40,13 +40,6 @@ properties:
       - qcom,sm6350-adsp-pas
       - qcom,sm6350-cdsp-pas
       - qcom,sm6350-mpss-pas
-      - qcom,sm8150-adsp-pas
-      - qcom,sm8150-cdsp-pas
-      - qcom,sm8150-mpss-pas
-      - qcom,sm8150-slpi-pas
-      - qcom,sm8250-adsp-pas
-      - qcom,sm8250-cdsp-pas
-      - qcom,sm8250-slpi-pas
 
   reg:
     maxItems: 1
@@ -94,13 +87,6 @@ allOf:
               - qcom,sm6350-adsp-pas
               - qcom,sm6350-cdsp-pas
               - qcom,sm6350-mpss-pas
-              - qcom,sm8150-adsp-pas
-              - qcom,sm8150-cdsp-pas
-              - qcom,sm8150-mpss-pas
-              - qcom,sm8150-slpi-pas
-              - qcom,sm8250-adsp-pas
-              - qcom,sm8250-cdsp-pas
-              - qcom,sm8250-slpi-pas
     then:
       properties:
         clocks:
@@ -150,12 +136,6 @@ allOf:
               - qcom,sdm845-cdsp-pas
               - qcom,sm6350-adsp-pas
               - qcom,sm6350-cdsp-pas
-              - qcom,sm8150-adsp-pas
-              - qcom,sm8150-cdsp-pas
-              - qcom,sm8150-slpi-pas
-              - qcom,sm8250-adsp-pas
-              - qcom,sm8250-cdsp-pas
-              - qcom,sm8250-slpi-pas
     then:
       properties:
         interrupts:
@@ -173,7 +153,6 @@ allOf:
               - qcom,sc8180x-mpss-pas
               - qcom,sdx55-mpss-pas
               - qcom,sm6350-mpss-pas
-              - qcom,sm8150-mpss-pas
     then:
       properties:
         interrupts:
@@ -199,8 +178,6 @@ allOf:
               - qcom,msm8226-adsp-pil
               - qcom,msm8996-adsp-pil
               - qcom,msm8998-adsp-pas
-              - qcom,sm8150-adsp-pas
-              - qcom,sm8150-cdsp-pas
     then:
       properties:
         power-domains:
@@ -272,7 +249,6 @@ allOf:
               - qcom,sc7280-mpss-pas
               - qcom,sdx55-mpss-pas
               - qcom,sm6350-mpss-pas
-              - qcom,sm8150-mpss-pas
     then:
       properties:
         power-domains:
@@ -293,9 +269,6 @@ allOf:
               - qcom,sc8180x-cdsp-pas
               - qcom,sc8280xp-adsp-pas
               - qcom,sm6350-adsp-pas
-              - qcom,sm8150-slpi-pas
-              - qcom,sm8250-adsp-pas
-              - qcom,sm8250-slpi-pas
     then:
       properties:
         power-domains:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
new file mode 100644
index 000000000000..b934252cf02b
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
@@ -0,0 +1,166 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,sm8150-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SM8150/SM8250 Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm SM8150/SM8250 SoC Peripheral Authentication Service loads and boots
+  firmware on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,sm8150-adsp-pas
+      - qcom,sm8150-cdsp-pas
+      - qcom,sm8150-mpss-pas
+      - qcom,sm8150-slpi-pas
+      - qcom,sm8250-adsp-pas
+      - qcom,sm8250-cdsp-pas
+      - qcom,sm8250-slpi-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8150-adsp-pas
+            - qcom,sm8150-cdsp-pas
+            - qcom,sm8150-slpi-pas
+            - qcom,sm8250-adsp-pas
+            - qcom,sm8250-cdsp-pas
+            - qcom,sm8250-slpi-pas
+    then:
+      properties:
+        interrupts:
+          maxItems: 5
+        interrupt-names:
+          maxItems: 5
+    else:
+      properties:
+        interrupts:
+          minItems: 6
+        interrupt-names:
+          minItems: 6
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8150-adsp-pas
+            - qcom,sm8150-cdsp-pas
+            - qcom,sm8250-cdsp-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: CX power domain
+        power-domain-names:
+          items:
+            - const: cx
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8150-mpss-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: CX power domain
+            - description: MSS power domain
+        power-domain-names:
+          items:
+            - const: cx
+            - const: mss
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm8150-slpi-pas
+            - qcom,sm8250-adsp-pas
+            - qcom,sm8250-slpi-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: LCX power domain
+            - description: LMX power domain
+        power-domain-names:
+          items:
+            - const: lcx
+            - const: lmx
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,rpmh.h>
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/power/qcom-rpmpd.h>
+
+    remoteproc@17300000 {
+        compatible = "qcom,sm8150-adsp-pas";
+        reg = <0x17300000 0x4040>;
+
+        clocks = <&rpmhcc RPMH_CXO_CLK>;
+        clock-names = "xo";
+
+        firmware-name = "qcom/sm8150/adsp.mbn";
+
+        interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
+        interrupt-names = "wdog", "fatal", "ready",
+                          "handover", "stop-ack";
+
+        memory-region = <&adsp_mem>;
+
+        power-domains = <&rpmhpd SM8150_CX>;
+
+        qcom,qmp = <&aoss_qmp>;
+        qcom,smem-states = <&adsp_smp2p_out 0>;
+        qcom,smem-state-names = "stop";
+
+        glink-edge {
+            interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
+            label = "lpass";
+            qcom,remote-pid = <2>;
+            mboxes = <&apss_shared 8>;
+
+            /* ... */
+
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 09/15] dt-bindings: remoteproc: qcom,sm6350-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (7 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:50   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 10/15] dt-bindings: remoteproc: qcom,sc8280xp-pas: " Krzysztof Kozlowski
                   ` (6 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split SM6350 remote processor Peripheral Authentication Service bindings
into their own file to reduce complexity and make maintenance easier.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. Drop if:then: for the clock and put it directly under properties.
2. Merge two if:then: clauses for setting interrupts.

Changes since v1:
1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
---
 .../bindings/remoteproc/qcom,adsp.yaml        |  28 ---
 .../bindings/remoteproc/qcom,sm6350-pas.yaml  | 159 ++++++++++++++++++
 2 files changed, 159 insertions(+), 28 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index e8d66eefd522..b14a83da37c2 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -37,9 +37,6 @@ properties:
       - qcom,sdm845-adsp-pas
       - qcom,sdm845-cdsp-pas
       - qcom,sdx55-mpss-pas
-      - qcom,sm6350-adsp-pas
-      - qcom,sm6350-cdsp-pas
-      - qcom,sm6350-mpss-pas
 
   reg:
     maxItems: 1
@@ -84,9 +81,6 @@ allOf:
               - qcom,sc8280xp-nsp1-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
-              - qcom,sm6350-adsp-pas
-              - qcom,sm6350-cdsp-pas
-              - qcom,sm6350-mpss-pas
     then:
       properties:
         clocks:
@@ -134,8 +128,6 @@ allOf:
               - qcom,sc8280xp-nsp1-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
-              - qcom,sm6350-adsp-pas
-              - qcom,sm6350-cdsp-pas
     then:
       properties:
         interrupts:
@@ -152,7 +144,6 @@ allOf:
               - qcom,sc7280-mpss-pas
               - qcom,sc8180x-mpss-pas
               - qcom,sdx55-mpss-pas
-              - qcom,sm6350-mpss-pas
     then:
       properties:
         interrupts:
@@ -224,23 +215,6 @@ allOf:
             - const: mx
             - const: mss
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sm6350-cdsp-pas
-    then:
-      properties:
-        power-domains:
-          items:
-            - description: CX power domain
-            - description: MX power domain
-        power-domain-names:
-          items:
-            - const: cx
-            - const: mx
-
   - if:
       properties:
         compatible:
@@ -248,7 +222,6 @@ allOf:
             enum:
               - qcom,sc7280-mpss-pas
               - qcom,sdx55-mpss-pas
-              - qcom,sm6350-mpss-pas
     then:
       properties:
         power-domains:
@@ -268,7 +241,6 @@ allOf:
               - qcom,sc8180x-adsp-pas
               - qcom,sc8180x-cdsp-pas
               - qcom,sc8280xp-adsp-pas
-              - qcom,sm6350-adsp-pas
     then:
       properties:
         power-domains:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml
new file mode 100644
index 000000000000..911529400142
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml
@@ -0,0 +1,159 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,sm6350-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SM6350 Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm SM6350 SoC Peripheral Authentication Service loads and boots
+  firmware on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,sm6350-adsp-pas
+      - qcom,sm6350-cdsp-pas
+      - qcom,sm6350-mpss-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm6350-adsp-pas
+            - qcom,sm6350-cdsp-pas
+    then:
+      properties:
+        interrupts:
+          maxItems: 5
+        interrupt-names:
+          maxItems: 5
+    else:
+      properties:
+        interrupts:
+          minItems: 6
+        interrupt-names:
+          minItems: 6
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm6350-adsp-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: LCX power domain
+            - description: LMX power domain
+        power-domain-names:
+          items:
+            - const: lcx
+            - const: lmx
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm6350-cdsp-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: CX power domain
+            - description: MX power domain
+        power-domain-names:
+          items:
+            - const: cx
+            - const: mx
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sm6350-mpss-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: CX power domain
+            - description: MSS power domain
+        power-domain-names:
+          items:
+            - const: cx
+            - const: mss
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,rpmh.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/mailbox/qcom-ipcc.h>
+    #include <dt-bindings/power/qcom-rpmpd.h>
+
+    remoteproc@3000000 {
+        compatible = "qcom,sm6350-adsp-pas";
+        reg = <0x03000000 0x100>;
+
+        clocks = <&rpmhcc RPMH_CXO_CLK>;
+        clock-names = "xo";
+
+        interrupts-extended = <&pdc 6 IRQ_TYPE_LEVEL_HIGH>,
+                              <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>;
+        interrupt-names = "wdog", "fatal", "ready",
+                          "handover", "stop-ack";
+
+        memory-region = <&pil_adsp_mem>;
+
+        power-domains = <&rpmhpd SM6350_LCX>,
+                        <&rpmhpd SM6350_LMX>;
+        power-domain-names = "lcx", "lmx";
+
+        qcom,qmp = <&aoss_qmp>;
+        qcom,smem-states = <&smp2p_adsp_out 0>;
+        qcom,smem-state-names = "stop";
+
+        glink-edge {
+            interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
+                                         IPCC_MPROC_SIGNAL_GLINK_QMP
+                                         IRQ_TYPE_EDGE_RISING>;
+            mboxes = <&ipcc IPCC_CLIENT_LPASS
+                            IPCC_MPROC_SIGNAL_GLINK_QMP>;
+
+            label = "lpass";
+            qcom,remote-pid = <2>;
+
+            /* ... */
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 10/15] dt-bindings: remoteproc: qcom,sc8280xp-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (8 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 09/15] dt-bindings: remoteproc: qcom,sm6350-pas: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:50   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 11/15] dt-bindings: remoteproc: qcom,sc8180x-pas: " Krzysztof Kozlowski
                   ` (5 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split SC8280XP remote processor Peripheral Authentication Service bindings
into their own file to reduce complexity and make maintenance easier.

While moving correctly constrain the number of interrupts per specific
device.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. Drop if:then: for the clock and put it directly under properties.
2. Merge two if:then: clauses for setting interrupts.

Changes since v1:
1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
2. Add firmware-name to example.
3. Correct maxItems: 5 for interrupts.
---
 .../bindings/remoteproc/qcom,adsp.yaml        |  26 ----
 .../remoteproc/qcom,sc8280xp-pas.yaml         | 139 ++++++++++++++++++
 2 files changed, 139 insertions(+), 26 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index b14a83da37c2..67a68a8edc44 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -30,9 +30,6 @@ properties:
       - qcom,sc8180x-adsp-pas
       - qcom,sc8180x-cdsp-pas
       - qcom,sc8180x-mpss-pas
-      - qcom,sc8280xp-adsp-pas
-      - qcom,sc8280xp-nsp0-pas
-      - qcom,sc8280xp-nsp1-pas
       - qcom,sdm660-adsp-pas
       - qcom,sdm845-adsp-pas
       - qcom,sdm845-cdsp-pas
@@ -76,9 +73,6 @@ allOf:
               - qcom,sc8180x-adsp-pas
               - qcom,sc8180x-cdsp-pas
               - qcom,sc8180x-mpss-pas
-              - qcom,sc8280xp-adsp-pas
-              - qcom,sc8280xp-nsp0-pas
-              - qcom,sc8280xp-nsp1-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
     then:
@@ -123,9 +117,6 @@ allOf:
               - qcom,qcs404-wcss-pas
               - qcom,sc8180x-adsp-pas
               - qcom,sc8180x-cdsp-pas
-              - qcom,sc8280xp-adsp-pas
-              - qcom,sc8280xp-nsp0-pas
-              - qcom,sc8280xp-nsp1-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
     then:
@@ -240,7 +231,6 @@ allOf:
             enum:
               - qcom,sc8180x-adsp-pas
               - qcom,sc8180x-cdsp-pas
-              - qcom,sc8280xp-adsp-pas
     then:
       properties:
         power-domains:
@@ -252,22 +242,6 @@ allOf:
             - const: lcx
             - const: lmx
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sc8280xp-nsp0-pas
-              - qcom,sc8280xp-nsp1-pas
-    then:
-      properties:
-        power-domains:
-          items:
-            - description: NSP power domain
-        power-domain-names:
-          items:
-            - const: nsp
-
   - if:
       properties:
         compatible:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml
new file mode 100644
index 000000000000..c08274aaa6f8
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml
@@ -0,0 +1,139 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,sc8280xp-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SC8280XP Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm SC8280XP SoC Peripheral Authentication Service loads and boots
+  firmware on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,sc8280xp-adsp-pas
+      - qcom,sc8280xp-nsp0-pas
+      - qcom,sc8280xp-nsp1-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sc8280xp-nsp0-pas
+            - qcom,sc8280xp-nsp1-pas
+    then:
+      properties:
+        interrupts:
+          maxItems: 5
+        interrupt-names:
+          maxItems: 5
+    else:
+      properties:
+        interrupts:
+          minItems: 6
+        interrupt-names:
+          minItems: 6
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sc8280xp-adsp-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: LCX power domain
+            - description: LMX power domain
+        power-domain-names:
+          items:
+            - const: lcx
+            - const: lmx
+    else:
+      properties:
+        power-domains:
+          items:
+            - description: NSP power domain
+        power-domain-names:
+          items:
+            - const: nsp
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,rpmh.h>
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/mailbox/qcom-ipcc.h>
+    #include <dt-bindings/power/qcom-rpmpd.h>
+
+    remoteproc@3000000 {
+        compatible = "qcom,sc8280xp-adsp-pas";
+        reg = <0x03000000 0x100>;
+
+        clocks = <&rpmhcc RPMH_CXO_CLK>;
+        clock-names = "xo";
+
+        firmware-name = "qcom/sc8280xp/qcadsp8280.mbn";
+
+        interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
+                              <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>,
+                              <&smp2p_adsp_in 7 IRQ_TYPE_EDGE_RISING>;
+        interrupt-names = "wdog", "fatal", "ready",
+                          "handover", "stop-ack", "shutdown-ack";
+
+        memory-region = <&pil_adsp_mem>;
+
+        power-domains = <&rpmhpd SC8280XP_LCX>,
+                        <&rpmhpd SC8280XP_LMX>;
+        power-domain-names = "lcx", "lmx";
+
+        qcom,qmp = <&aoss_qmp>;
+        qcom,smem-states = <&smp2p_adsp_out 0>;
+        qcom,smem-state-names = "stop";
+
+        glink-edge {
+            interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
+                                         IPCC_MPROC_SIGNAL_GLINK_QMP
+                                         IRQ_TYPE_EDGE_RISING>;
+            mboxes = <&ipcc IPCC_CLIENT_LPASS
+                            IPCC_MPROC_SIGNAL_GLINK_QMP>;
+
+            label = "lpass";
+            qcom,remote-pid = <2>;
+
+            /* ... */
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 11/15] dt-bindings: remoteproc: qcom,sc8180x-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (9 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 10/15] dt-bindings: remoteproc: qcom,sc8280xp-pas: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:51   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 12/15] dt-bindings: remoteproc: qcom,sdx55-pas: " Krzysztof Kozlowski
                   ` (4 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split SC8180x remote processor Peripheral Authentication Service bindings
into their own file to reduce complexity and make maintenance easier.

The binding is incomplete due to lack of upstreamed DTS - no example and
not all power domains defined.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. Drop if:then: for the clock and put it directly under properties.
2. Merge two if:then: clauses for setting interrupts.

Changes since v1:
1. New patch.
---
 .../bindings/remoteproc/qcom,adsp.yaml        | 27 ------
 .../bindings/remoteproc/qcom,sc8180x-pas.yaml | 87 +++++++++++++++++++
 2 files changed, 87 insertions(+), 27 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc8180x-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 67a68a8edc44..7b93064fa0ae 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -27,9 +27,6 @@ properties:
       - qcom,qcs404-wcss-pas
       - qcom,sc7180-mpss-pas
       - qcom,sc7280-mpss-pas
-      - qcom,sc8180x-adsp-pas
-      - qcom,sc8180x-cdsp-pas
-      - qcom,sc8180x-mpss-pas
       - qcom,sdm660-adsp-pas
       - qcom,sdm845-adsp-pas
       - qcom,sdm845-cdsp-pas
@@ -70,9 +67,6 @@ allOf:
               - qcom,qcs404-wcss-pas
               - qcom,sc7180-mpss-pas
               - qcom,sc7280-mpss-pas
-              - qcom,sc8180x-adsp-pas
-              - qcom,sc8180x-cdsp-pas
-              - qcom,sc8180x-mpss-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
     then:
@@ -115,8 +109,6 @@ allOf:
               - qcom,qcs404-adsp-pas
               - qcom,qcs404-cdsp-pas
               - qcom,qcs404-wcss-pas
-              - qcom,sc8180x-adsp-pas
-              - qcom,sc8180x-cdsp-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
     then:
@@ -133,7 +125,6 @@ allOf:
             enum:
               - qcom,sc7180-mpss-pas
               - qcom,sc7280-mpss-pas
-              - qcom,sc8180x-mpss-pas
               - qcom,sdx55-mpss-pas
     then:
       properties:
@@ -224,24 +215,6 @@ allOf:
             - const: cx
             - const: mss
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sc8180x-adsp-pas
-              - qcom,sc8180x-cdsp-pas
-    then:
-      properties:
-        power-domains:
-          items:
-            - description: LCX power domain
-            - description: LMX power domain
-        power-domain-names:
-          items:
-            - const: lcx
-            - const: lmx
-
   - if:
       properties:
         compatible:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc8180x-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc8180x-pas.yaml
new file mode 100644
index 000000000000..3026cfde5582
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc8180x-pas.yaml
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,sc8180x-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SC8180X Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm SC8180X SoC Peripheral Authentication Service loads and boots
+  firmware on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,sc8180x-adsp-pas
+      - qcom,sc8180x-cdsp-pas
+      - qcom,sc8180x-mpss-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sc8180x-adsp-pas
+            - qcom,sc8180x-cdsp-pas
+    then:
+      properties:
+        interrupts:
+          maxItems: 5
+        interrupt-names:
+          maxItems: 5
+    else:
+      properties:
+        interrupts:
+          minItems: 6
+        interrupt-names:
+          minItems: 6
+
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sc8180x-adsp-pas
+            - qcom,sc8180x-cdsp-pas
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: LCX power domain
+            - description: LMX power domain
+        power-domain-names:
+          items:
+            - const: lcx
+            - const: lmx
+    else:
+      properties:
+        # TODO: incomplete
+        power-domains: false
+        power-domain-names: false
+
+unevaluatedProperties: false
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 12/15] dt-bindings: remoteproc: qcom,sdx55-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (10 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 11/15] dt-bindings: remoteproc: qcom,sc8180x-pas: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:51   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 13/15] dt-bindings: remoteproc: qcom,qcs404-pas: " Krzysztof Kozlowski
                   ` (3 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split SDX55 remote processor Peripheral Authentication Service bindings
into their own file to reduce complexity and make maintenance easier.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v1:
1. New patch.
---
 .../bindings/remoteproc/qcom,adsp.yaml        |   4 -
 .../bindings/remoteproc/qcom,sdx55-pas.yaml   | 101 ++++++++++++++++++
 2 files changed, 101 insertions(+), 4 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 7b93064fa0ae..10c96445da11 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -30,7 +30,6 @@ properties:
       - qcom,sdm660-adsp-pas
       - qcom,sdm845-adsp-pas
       - qcom,sdm845-cdsp-pas
-      - qcom,sdx55-mpss-pas
 
   reg:
     maxItems: 1
@@ -125,7 +124,6 @@ allOf:
             enum:
               - qcom,sc7180-mpss-pas
               - qcom,sc7280-mpss-pas
-              - qcom,sdx55-mpss-pas
     then:
       properties:
         interrupts:
@@ -203,7 +201,6 @@ allOf:
           contains:
             enum:
               - qcom,sc7280-mpss-pas
-              - qcom,sdx55-mpss-pas
     then:
       properties:
         power-domains:
@@ -230,7 +227,6 @@ allOf:
               - qcom,qcs404-cdsp-pas
               - qcom,qcs404-wcss-pas
               - qcom,sdm660-adsp-pas
-              - qcom,sdx55-mpss-pas
     then:
       properties:
         qcom,qmp: false
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml
new file mode 100644
index 000000000000..cbeaa00ca4d4
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml
@@ -0,0 +1,101 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,sdx55-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SDX55 Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm SDX55 SoC Peripheral Authentication Service loads and boots firmware
+  on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,sdx55-mpss-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  interrupts:
+    minItems: 6
+
+  interrupt-names:
+    minItems: 6
+
+  power-domains:
+    items:
+      - description: CX power domain
+      - description: MSS power domain
+
+  power-domain-names:
+    items:
+      - const: cx
+      - const: mss
+
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,rpmh.h>
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/power/qcom-rpmpd.h>
+
+    remoteproc@4080000 {
+        compatible = "qcom,sdx55-mpss-pas";
+        reg = <0x04080000 0x4040>;
+
+        clocks = <&rpmhcc RPMH_CXO_CLK>;
+        clock-names = "xo";
+
+        interrupts-extended = <&intc GIC_SPI 250 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
+        interrupt-names = "wdog", "fatal", "ready", "handover",
+                          "stop-ack", "shutdown-ack";
+
+        memory-region = <&mpss_adsp_mem>;
+
+        power-domains = <&rpmhpd SDX55_CX>, <&rpmhpd SDX55_MSS>;
+        power-domain-names = "cx", "mss";
+
+        qcom,smem-states = <&modem_smp2p_out 0>;
+        qcom,smem-state-names = "stop";
+
+        glink-edge {
+            interrupts = <GIC_SPI 114 IRQ_TYPE_EDGE_RISING>;
+            label = "mpss";
+            mboxes = <&apcs 15>;
+            qcom,remote-pid = <1>;
+
+            /* ... */
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 13/15] dt-bindings: remoteproc: qcom,qcs404-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (11 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 12/15] dt-bindings: remoteproc: qcom,sdx55-pas: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:52   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 14/15] dt-bindings: remoteproc: qcom,sc7180-pas: " Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split QCS404 remote processor Peripheral Authentication Service bindings
into their own file to reduce complexity and make maintenance easier.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch.
---
 .../bindings/remoteproc/qcom,adsp.yaml        | 12 ---
 .../bindings/remoteproc/qcom,qcs404-pas.yaml  | 86 +++++++++++++++++++
 2 files changed, 86 insertions(+), 12 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 10c96445da11..9fdfa9476ca9 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -22,9 +22,6 @@ properties:
       - qcom,msm8996-slpi-pil
       - qcom,msm8998-adsp-pas
       - qcom,msm8998-slpi-pas
-      - qcom,qcs404-adsp-pas
-      - qcom,qcs404-cdsp-pas
-      - qcom,qcs404-wcss-pas
       - qcom,sc7180-mpss-pas
       - qcom,sc7280-mpss-pas
       - qcom,sdm660-adsp-pas
@@ -61,9 +58,6 @@ allOf:
               - qcom,msm8996-adsp-pil
               - qcom,msm8996-slpi-pil
               - qcom,msm8998-adsp-pas
-              - qcom,qcs404-adsp-pas
-              - qcom,qcs404-cdsp-pas
-              - qcom,qcs404-wcss-pas
               - qcom,sc7180-mpss-pas
               - qcom,sc7280-mpss-pas
               - qcom,sdm845-adsp-pas
@@ -105,9 +99,6 @@ allOf:
               - qcom,msm8996-slpi-pil
               - qcom,msm8998-adsp-pas
               - qcom,msm8998-slpi-pas
-              - qcom,qcs404-adsp-pas
-              - qcom,qcs404-cdsp-pas
-              - qcom,qcs404-wcss-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
     then:
@@ -223,9 +214,6 @@ allOf:
               - qcom,msm8996-slpi-pil
               - qcom,msm8998-adsp-pas
               - qcom,msm8998-slpi-pas
-              - qcom,qcs404-adsp-pas
-              - qcom,qcs404-cdsp-pas
-              - qcom,qcs404-wcss-pas
               - qcom,sdm660-adsp-pas
     then:
       properties:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml
new file mode 100644
index 000000000000..007349ef51ed
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml
@@ -0,0 +1,86 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,qcs404-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm QCS404 Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm QCS404 SoC Peripheral Authentication Service loads and boots
+  firmware on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,qcs404-adsp-pas
+      - qcom,qcs404-cdsp-pas
+      - qcom,qcs404-wcss-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  interrupts:
+    maxItems: 5
+
+  interrupt-names:
+    maxItems: 5
+
+  power-domains: false
+  power-domain-names: false
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    remoteproc@c700000 {
+        compatible = "qcom,qcs404-adsp-pas";
+        reg = <0x0c700000 0x4040>;
+
+        clocks = <&xo_board>;
+        clock-names = "xo";
+
+        interrupts-extended = <&intc GIC_SPI 293 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
+                              <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
+        interrupt-names = "wdog", "fatal", "ready",
+                          "handover", "stop-ack";
+
+        memory-region = <&adsp_fw_mem>;
+
+        qcom,smem-states = <&adsp_smp2p_out 0>;
+        qcom,smem-state-names = "stop";
+
+        glink-edge {
+            interrupts = <GIC_SPI 289 IRQ_TYPE_EDGE_RISING>;
+
+            qcom,remote-pid = <2>;
+            mboxes = <&apcs_glb 8>;
+
+            label = "adsp";
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 14/15] dt-bindings: remoteproc: qcom,sc7180-pas: split into separate file
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (12 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 13/15] dt-bindings: remoteproc: qcom,qcs404-pas: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:52   ` Rob Herring
  2022-11-24 18:43 ` [PATCH v3 15/15] dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks Krzysztof Kozlowski
  2022-12-27 18:08 ` (subset) [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Bjorn Andersson
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Split SC7180 and SC7280remote processor Peripheral Authentication
Service bindings into their own file to reduce complexity and make
maintenance easier.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch.
---
 .../bindings/remoteproc/qcom,adsp.yaml        |  54 --------
 .../bindings/remoteproc/qcom,sc7180-pas.yaml  | 125 ++++++++++++++++++
 2 files changed, 125 insertions(+), 54 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 9fdfa9476ca9..7848d1d658f4 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -22,8 +22,6 @@ properties:
       - qcom,msm8996-slpi-pil
       - qcom,msm8998-adsp-pas
       - qcom,msm8998-slpi-pas
-      - qcom,sc7180-mpss-pas
-      - qcom,sc7280-mpss-pas
       - qcom,sdm660-adsp-pas
       - qcom,sdm845-adsp-pas
       - qcom,sdm845-cdsp-pas
@@ -58,8 +56,6 @@ allOf:
               - qcom,msm8996-adsp-pil
               - qcom,msm8996-slpi-pil
               - qcom,msm8998-adsp-pas
-              - qcom,sc7180-mpss-pas
-              - qcom,sc7280-mpss-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
     then:
@@ -108,20 +104,6 @@ allOf:
         interrupt-names:
           maxItems: 5
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sc7180-mpss-pas
-              - qcom,sc7280-mpss-pas
-    then:
-      properties:
-        interrupts:
-          minItems: 6
-        interrupt-names:
-          minItems: 6
-
   - if:
       properties:
         compatible:
@@ -167,42 +149,6 @@ allOf:
       required:
         - px-supply
 
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sc7180-mpss-pas
-    then:
-      properties:
-        power-domains:
-          items:
-            - description: CX power domain
-            - description: MX power domain
-            - description: MSS power domain
-        power-domain-names:
-          items:
-            - const: cx
-            - const: mx
-            - const: mss
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sc7280-mpss-pas
-    then:
-      properties:
-        power-domains:
-          items:
-            - description: CX power domain
-            - description: MSS power domain
-        power-domain-names:
-          items:
-            - const: cx
-            - const: mss
-
   - if:
       properties:
         compatible:
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml
new file mode 100644
index 000000000000..6fd768609a66
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml
@@ -0,0 +1,125 @@
+# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/qcom,sc7180-pas.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm SC7180/SC7280 Peripheral Authentication Service
+
+maintainers:
+  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
+
+description:
+  Qualcomm SC7180/SC7280 SoC Peripheral Authentication Service loads and boots
+  firmware on the Qualcomm DSP Hexagon cores.
+
+properties:
+  compatible:
+    enum:
+      - qcom,sc7180-mpss-pas
+      - qcom,sc7280-mpss-pas
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    items:
+      - description: XO clock
+
+  clock-names:
+    items:
+      - const: xo
+
+  interrupts:
+    minItems: 6
+
+  interrupt-names:
+    minItems: 6
+
+  power-domains:
+    minItems: 2
+    items:
+      - description: CX power domain
+      - description: MX power domain
+      - description: MSS power domain
+
+  power-domain-names:
+    minItems: 2
+    items:
+      - const: cx
+      - const: mx
+      - const: mss
+
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
+  smd-edge: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
+  - if:
+      properties:
+        compatible:
+          enum:
+            - qcom,sc7180-mpss-pas
+    then:
+      properties:
+        power-domains:
+          minItems: 3
+        power-domain-names:
+          minItems: 3
+    else:
+      properties:
+        power-domains:
+          maxItems: 2
+        power-domain-names:
+          maxItems: 2
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/qcom,rpmh.h>
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/power/qcom-rpmpd.h>
+
+    remoteproc@4080000 {
+        compatible = "qcom,sc7180-mpss-pas";
+        reg = <0x04080000 0x4040>;
+
+        clocks = <&rpmhcc RPMH_CXO_CLK>;
+        clock-names = "xo";
+
+        interrupts-extended = <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
+                              <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
+        interrupt-names = "wdog", "fatal", "ready", "handover",
+                          "stop-ack", "shutdown-ack";
+
+        memory-region = <&mpss_mem>;
+
+        power-domains = <&rpmhpd SC7180_CX>,
+                        <&rpmhpd SC7180_MX>,
+                        <&rpmhpd SC7180_MSS>;
+        power-domain-names = "cx", "mx", "mss";
+
+        qcom,qmp = <&aoss_qmp>;
+        qcom,smem-states = <&modem_smp2p_out 0>;
+        qcom,smem-state-names = "stop";
+
+        glink-edge {
+            interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;
+            label = "modem";
+            qcom,remote-pid = <1>;
+            mboxes = <&apss_shared 12>;
+        };
+    };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH v3 15/15] dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (13 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 14/15] dt-bindings: remoteproc: qcom,sc7180-pas: " Krzysztof Kozlowski
@ 2022-11-24 18:43 ` Krzysztof Kozlowski
  2022-12-05 19:53   ` Rob Herring
  2022-12-27 18:08 ` (subset) [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Bjorn Andersson
  15 siblings, 1 reply; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-11-24 18:43 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Rob Herring, Krzysztof Kozlowski, Manivannan Sadhasivam,
	linux-arm-msm, linux-remoteproc, devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

According to DTS and Linux driver, the MSM8996 SLPI PIL takes two clocks
- xo and aggre2:

  qcom/msm8996-oneplus3t.dtb: remoteproc@1c00000: clocks: [[20], [3, 64]] is too long
  qcom/msm8996-oneplus3t.dtb: remoteproc@1c00000: clock-names: ['xo', 'aggre2'] is too long

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Changes since v2:
1. New patch.
---
 Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 7848d1d658f4..9af2db72b337 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -54,7 +54,6 @@ allOf:
               - qcom,msm8226-adsp-pil
               - qcom,msm8974-adsp-pil
               - qcom,msm8996-adsp-pil
-              - qcom,msm8996-slpi-pil
               - qcom,msm8998-adsp-pas
               - qcom,sdm845-adsp-pas
               - qcom,sdm845-cdsp-pas
@@ -72,6 +71,7 @@ allOf:
         compatible:
           contains:
             enum:
+              - qcom,msm8996-slpi-pil
               - qcom,msm8998-slpi-pas
     then:
       properties:
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 05/15] dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs
  2022-11-24 18:43 ` [PATCH v3 05/15] dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs Krzysztof Kozlowski
@ 2022-12-05 19:44   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:44 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Manivannan Sadhasivam, devicetree, Mathieu Poirier,
	linux-arm-msm, Konrad Dybcio, linux-kernel, Rob Herring,
	Krzysztof Kozlowski, Andy Gross, linux-remoteproc,
	Bjorn Andersson


On Thu, 24 Nov 2022 19:43:23 +0100, Krzysztof Kozlowski wrote:
> Some remote processors (e.g. QCS404 CDSP, SC7180 MPSS/MSS) can be brought
> to life using two different bindings:
> 1. PIL (Peripheral Image Loader)
> 2. PAS (Peripheral Authentication Service)
> 
> They still describe the same hardware - firmware load for remote
> processor - but use different methods to communicate with that
> processor.
> 
> For these SoCs, the qcom,adsp.yaml bindings were describing the PAS
> method, however for easier customization of board DTS, the bindings
> combined additional properties from PIL: reset lines, qcom,halt-regs and
> additional clocks.  The devices and Linux kernel drivers, when
> instantiated as PAS, do not use these properties, so drop them from the
> bindings.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. New patch
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        | 113 +-----------------
>  1 file changed, 4 insertions(+), 109 deletions(-)
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 06/15] dt-bindings: remoteproc: qcom,adsp: split common part
  2022-11-24 18:43 ` [PATCH v3 06/15] dt-bindings: remoteproc: qcom,adsp: split common part Krzysztof Kozlowski
@ 2022-12-05 19:44   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:44 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: linux-arm-msm, Konrad Dybcio, linux-kernel, Rob Herring,
	Manivannan Sadhasivam, Krzysztof Kozlowski, linux-remoteproc,
	devicetree, Mathieu Poirier, Andy Gross, Bjorn Andersson


On Thu, 24 Nov 2022 19:43:24 +0100, Krzysztof Kozlowski wrote:
> Split common part of Qualcomm SoC Peripheral Authentication Service
> bindings into a re-usable schema file.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. Allow only one or two clocks, after dropping clocks related to PIL binding.
> 
> Changes since v1:
> 1. Keep resets, reset-names, qcom,qmp and qcom,halt-regs in qcom,adsp,
>    because they are not shared with most of PAS bindings.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        | 81 +---------------
>  .../bindings/remoteproc/qcom,pas-common.yaml  | 97 +++++++++++++++++++
>  2 files changed, 99 insertions(+), 79 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 07/15] dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 07/15] dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file Krzysztof Kozlowski
@ 2022-12-05 19:45   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:45 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Andy Gross, devicetree, Mathieu Poirier, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, linux-kernel, linux-remoteproc,
	linux-arm-msm, Manivannan Sadhasivam, Bjorn Andersson


On Thu, 24 Nov 2022 19:43:25 +0100, Krzysztof Kozlowski wrote:
> Split SM8350 and SM8450 remote processor Peripheral Authentication
> Service bindings into their own file to reduce complexity and make
> maintenance easier.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. Drop if:then: for the clock and put it directly under properties.
> 2. Merge two if:then: clauses for setting interrupts.
> 
> Changes since v1:
> 1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
> 2. Add firmware-name to example.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        |  48 -----
>  .../bindings/remoteproc/qcom,sm8350-pas.yaml  | 174 ++++++++++++++++++
>  2 files changed, 174 insertions(+), 48 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm8350-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: " Krzysztof Kozlowski
@ 2022-12-05 19:46   ` Rob Herring
  2022-12-05 19:49   ` Rob Herring
  1 sibling, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:46 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Rob Herring, linux-remoteproc, linux-kernel, Andy Gross,
	devicetree, Konrad Dybcio, Krzysztof Kozlowski, linux-arm-msm,
	Manivannan Sadhasivam, Mathieu Poirier, Bjorn Andersson


On Thu, 24 Nov 2022 19:43:26 +0100, Krzysztof Kozlowski wrote:
> Split SM8150 and SM8250 remote processor Peripheral Authentication
> Service bindings into their own file to reduce complexity and make
> maintenance easier.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. Drop if:then: for the clock and put it directly under properties.
> 2. Merge two if:then: clauses for setting interrupts.
> 
> Changes since v1:
> 1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
> 2. Add firmware-name to example.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        |  27 ---
>  .../bindings/remoteproc/qcom,sm8150-pas.yaml  | 166 ++++++++++++++++++
>  2 files changed, 166 insertions(+), 27 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: " Krzysztof Kozlowski
  2022-12-05 19:46   ` Rob Herring
@ 2022-12-05 19:49   ` Rob Herring
  2022-12-06  7:58     ` Krzysztof Kozlowski
  1 sibling, 1 reply; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:49 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Krzysztof Kozlowski, Manivannan Sadhasivam, linux-arm-msm,
	linux-remoteproc, devicetree, linux-kernel

On Thu, Nov 24, 2022 at 07:43:26PM +0100, Krzysztof Kozlowski wrote:
> Split SM8150 and SM8250 remote processor Peripheral Authentication
> Service bindings into their own file to reduce complexity and make
> maintenance easier.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. Drop if:then: for the clock and put it directly under properties.
> 2. Merge two if:then: clauses for setting interrupts.
> 
> Changes since v1:
> 1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
> 2. Add firmware-name to example.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        |  27 ---
>  .../bindings/remoteproc/qcom,sm8150-pas.yaml  | 166 ++++++++++++++++++
>  2 files changed, 166 insertions(+), 27 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
> 
> diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
> index 67941e79a4a0..e8d66eefd522 100644
> --- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
> +++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
> @@ -40,13 +40,6 @@ properties:
>        - qcom,sm6350-adsp-pas
>        - qcom,sm6350-cdsp-pas
>        - qcom,sm6350-mpss-pas
> -      - qcom,sm8150-adsp-pas
> -      - qcom,sm8150-cdsp-pas
> -      - qcom,sm8150-mpss-pas
> -      - qcom,sm8150-slpi-pas
> -      - qcom,sm8250-adsp-pas
> -      - qcom,sm8250-cdsp-pas
> -      - qcom,sm8250-slpi-pas
>  
>    reg:
>      maxItems: 1
> @@ -94,13 +87,6 @@ allOf:
>                - qcom,sm6350-adsp-pas
>                - qcom,sm6350-cdsp-pas
>                - qcom,sm6350-mpss-pas
> -              - qcom,sm8150-adsp-pas
> -              - qcom,sm8150-cdsp-pas
> -              - qcom,sm8150-mpss-pas
> -              - qcom,sm8150-slpi-pas
> -              - qcom,sm8250-adsp-pas
> -              - qcom,sm8250-cdsp-pas
> -              - qcom,sm8250-slpi-pas
>      then:
>        properties:
>          clocks:
> @@ -150,12 +136,6 @@ allOf:
>                - qcom,sdm845-cdsp-pas
>                - qcom,sm6350-adsp-pas
>                - qcom,sm6350-cdsp-pas
> -              - qcom,sm8150-adsp-pas
> -              - qcom,sm8150-cdsp-pas
> -              - qcom,sm8150-slpi-pas
> -              - qcom,sm8250-adsp-pas
> -              - qcom,sm8250-cdsp-pas
> -              - qcom,sm8250-slpi-pas
>      then:
>        properties:
>          interrupts:
> @@ -173,7 +153,6 @@ allOf:
>                - qcom,sc8180x-mpss-pas
>                - qcom,sdx55-mpss-pas
>                - qcom,sm6350-mpss-pas
> -              - qcom,sm8150-mpss-pas
>      then:
>        properties:
>          interrupts:
> @@ -199,8 +178,6 @@ allOf:
>                - qcom,msm8226-adsp-pil
>                - qcom,msm8996-adsp-pil
>                - qcom,msm8998-adsp-pas
> -              - qcom,sm8150-adsp-pas
> -              - qcom,sm8150-cdsp-pas
>      then:
>        properties:
>          power-domains:
> @@ -272,7 +249,6 @@ allOf:
>                - qcom,sc7280-mpss-pas
>                - qcom,sdx55-mpss-pas
>                - qcom,sm6350-mpss-pas
> -              - qcom,sm8150-mpss-pas
>      then:
>        properties:
>          power-domains:
> @@ -293,9 +269,6 @@ allOf:
>                - qcom,sc8180x-cdsp-pas
>                - qcom,sc8280xp-adsp-pas
>                - qcom,sm6350-adsp-pas
> -              - qcom,sm8150-slpi-pas
> -              - qcom,sm8250-adsp-pas
> -              - qcom,sm8250-slpi-pas
>      then:
>        properties:
>          power-domains:
> diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
> new file mode 100644
> index 000000000000..b934252cf02b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
> @@ -0,0 +1,166 @@
> +# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/remoteproc/qcom,sm8150-pas.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm SM8150/SM8250 Peripheral Authentication Service
> +
> +maintainers:
> +  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> +
> +description:
> +  Qualcomm SM8150/SM8250 SoC Peripheral Authentication Service loads and boots
> +  firmware on the Qualcomm DSP Hexagon cores.
> +
> +properties:
> +  compatible:
> +    enum:
> +      - qcom,sm8150-adsp-pas
> +      - qcom,sm8150-cdsp-pas
> +      - qcom,sm8150-mpss-pas
> +      - qcom,sm8150-slpi-pas
> +      - qcom,sm8250-adsp-pas
> +      - qcom,sm8250-cdsp-pas
> +      - qcom,sm8250-slpi-pas
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    items:
> +      - description: XO clock
> +
> +  clock-names:
> +    items:
> +      - const: xo
> +
> +  qcom,qmp:
> +    $ref: /schemas/types.yaml#/definitions/phandle
> +    description: Reference to the AOSS side-channel message RAM.

Not ideal that we are defining the type here multiple times.

Otherwise,

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 09/15] dt-bindings: remoteproc: qcom,sm6350-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 09/15] dt-bindings: remoteproc: qcom,sm6350-pas: " Krzysztof Kozlowski
@ 2022-12-05 19:50   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:50 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Mathieu Poirier, linux-remoteproc, Andy Gross, devicetree,
	Krzysztof Kozlowski, linux-arm-msm, Rob Herring, Konrad Dybcio,
	linux-kernel, Bjorn Andersson, Manivannan Sadhasivam


On Thu, 24 Nov 2022 19:43:27 +0100, Krzysztof Kozlowski wrote:
> Split SM6350 remote processor Peripheral Authentication Service bindings
> into their own file to reduce complexity and make maintenance easier.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. Drop if:then: for the clock and put it directly under properties.
> 2. Merge two if:then: clauses for setting interrupts.
> 
> Changes since v1:
> 1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        |  28 ---
>  .../bindings/remoteproc/qcom,sm6350-pas.yaml  | 159 ++++++++++++++++++
>  2 files changed, 159 insertions(+), 28 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sm6350-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 10/15] dt-bindings: remoteproc: qcom,sc8280xp-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 10/15] dt-bindings: remoteproc: qcom,sc8280xp-pas: " Krzysztof Kozlowski
@ 2022-12-05 19:50   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:50 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Konrad Dybcio, Mathieu Poirier, Rob Herring,
	linux-remoteproc, Krzysztof Kozlowski, linux-arm-msm,
	Manivannan Sadhasivam, linux-kernel, Andy Gross, devicetree


On Thu, 24 Nov 2022 19:43:28 +0100, Krzysztof Kozlowski wrote:
> Split SC8280XP remote processor Peripheral Authentication Service bindings
> into their own file to reduce complexity and make maintenance easier.
> 
> While moving correctly constrain the number of interrupts per specific
> device.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. Drop if:then: for the clock and put it directly under properties.
> 2. Merge two if:then: clauses for setting interrupts.
> 
> Changes since v1:
> 1. Add qcom,qmp (not part of qcom,pas-common.yaml# anymore).
> 2. Add firmware-name to example.
> 3. Correct maxItems: 5 for interrupts.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        |  26 ----
>  .../remoteproc/qcom,sc8280xp-pas.yaml         | 139 ++++++++++++++++++
>  2 files changed, 139 insertions(+), 26 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc8280xp-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 11/15] dt-bindings: remoteproc: qcom,sc8180x-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 11/15] dt-bindings: remoteproc: qcom,sc8180x-pas: " Krzysztof Kozlowski
@ 2022-12-05 19:51   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:51 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Krzysztof Kozlowski, Konrad Dybcio, Rob Herring,
	Manivannan Sadhasivam, devicetree, linux-kernel,
	linux-remoteproc, Andy Gross, linux-arm-msm, Mathieu Poirier,
	Bjorn Andersson


On Thu, 24 Nov 2022 19:43:29 +0100, Krzysztof Kozlowski wrote:
> Split SC8180x remote processor Peripheral Authentication Service bindings
> into their own file to reduce complexity and make maintenance easier.
> 
> The binding is incomplete due to lack of upstreamed DTS - no example and
> not all power domains defined.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. Drop if:then: for the clock and put it directly under properties.
> 2. Merge two if:then: clauses for setting interrupts.
> 
> Changes since v1:
> 1. New patch.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        | 27 ------
>  .../bindings/remoteproc/qcom,sc8180x-pas.yaml | 87 +++++++++++++++++++
>  2 files changed, 87 insertions(+), 27 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc8180x-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 12/15] dt-bindings: remoteproc: qcom,sdx55-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 12/15] dt-bindings: remoteproc: qcom,sdx55-pas: " Krzysztof Kozlowski
@ 2022-12-05 19:51   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:51 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Rob Herring, Mathieu Poirier, linux-kernel, devicetree,
	Krzysztof Kozlowski, Andy Gross, Manivannan Sadhasivam,
	Bjorn Andersson, linux-arm-msm, linux-remoteproc, Konrad Dybcio


On Thu, 24 Nov 2022 19:43:30 +0100, Krzysztof Kozlowski wrote:
> Split SDX55 remote processor Peripheral Authentication Service bindings
> into their own file to reduce complexity and make maintenance easier.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v1:
> 1. New patch.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        |   4 -
>  .../bindings/remoteproc/qcom,sdx55-pas.yaml   | 101 ++++++++++++++++++
>  2 files changed, 101 insertions(+), 4 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sdx55-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 13/15] dt-bindings: remoteproc: qcom,qcs404-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 13/15] dt-bindings: remoteproc: qcom,qcs404-pas: " Krzysztof Kozlowski
@ 2022-12-05 19:52   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:52 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Konrad Dybcio, linux-kernel, Krzysztof Kozlowski,
	Mathieu Poirier, Andy Gross, Manivannan Sadhasivam, Rob Herring,
	linux-arm-msm, Bjorn Andersson, linux-remoteproc, devicetree


On Thu, 24 Nov 2022 19:43:31 +0100, Krzysztof Kozlowski wrote:
> Split QCS404 remote processor Peripheral Authentication Service bindings
> into their own file to reduce complexity and make maintenance easier.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. New patch.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        | 12 ---
>  .../bindings/remoteproc/qcom,qcs404-pas.yaml  | 86 +++++++++++++++++++
>  2 files changed, 86 insertions(+), 12 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 14/15] dt-bindings: remoteproc: qcom,sc7180-pas: split into separate file
  2022-11-24 18:43 ` [PATCH v3 14/15] dt-bindings: remoteproc: qcom,sc7180-pas: " Krzysztof Kozlowski
@ 2022-12-05 19:52   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:52 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Rob Herring, Manivannan Sadhasivam, Andy Gross,
	Krzysztof Kozlowski, linux-kernel, Mathieu Poirier,
	Konrad Dybcio, linux-arm-msm, devicetree, linux-remoteproc,
	Bjorn Andersson


On Thu, 24 Nov 2022 19:43:32 +0100, Krzysztof Kozlowski wrote:
> Split SC7180 and SC7280remote processor Peripheral Authentication
> Service bindings into their own file to reduce complexity and make
> maintenance easier.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. New patch.
> ---
>  .../bindings/remoteproc/qcom,adsp.yaml        |  54 --------
>  .../bindings/remoteproc/qcom,sc7180-pas.yaml  | 125 ++++++++++++++++++
>  2 files changed, 125 insertions(+), 54 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 15/15] dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks
  2022-11-24 18:43 ` [PATCH v3 15/15] dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks Krzysztof Kozlowski
@ 2022-12-05 19:53   ` Rob Herring
  0 siblings, 0 replies; 30+ messages in thread
From: Rob Herring @ 2022-12-05 19:53 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: linux-kernel, linux-remoteproc, Andy Gross, devicetree,
	Mathieu Poirier, Krzysztof Kozlowski, Rob Herring, linux-arm-msm,
	Konrad Dybcio, Manivannan Sadhasivam, Bjorn Andersson


On Thu, 24 Nov 2022 19:43:33 +0100, Krzysztof Kozlowski wrote:
> According to DTS and Linux driver, the MSM8996 SLPI PIL takes two clocks
> - xo and aggre2:
> 
>   qcom/msm8996-oneplus3t.dtb: remoteproc@1c00000: clocks: [[20], [3, 64]] is too long
>   qcom/msm8996-oneplus3t.dtb: remoteproc@1c00000: clock-names: ['xo', 'aggre2'] is too long
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Changes since v2:
> 1. New patch.
> ---
>  Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: split into separate file
  2022-12-05 19:49   ` Rob Herring
@ 2022-12-06  7:58     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 30+ messages in thread
From: Krzysztof Kozlowski @ 2022-12-06  7:58 UTC (permalink / raw)
  To: Rob Herring
  Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Mathieu Poirier,
	Krzysztof Kozlowski, Manivannan Sadhasivam, linux-arm-msm,
	linux-remoteproc, devicetree, linux-kernel

On 05/12/2022 20:49, Rob Herring wrote:

Hi Rob,

>> +  clocks:
>> +    items:
>> +      - description: XO clock
>> +
>> +  clock-names:
>> +    items:
>> +      - const: xo
>> +
>> +  qcom,qmp:
>> +    $ref: /schemas/types.yaml#/definitions/phandle
>> +    description: Reference to the AOSS side-channel message RAM.
> 
> Not ideal that we are defining the type here multiple times.


I was thinking to add it to the common file (qcom,pas-common.yaml,
created in patch 6/15) and just disallow it for other variants,
but that does not work that good:

Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml: properties:qcom,qmp: False is not of type 'object'
	hint: Vendor specific properties must have a type and description unless they have a defined, common suffix.
	from schema $id: http://devicetree.org/meta-schemas/vendor-props.yaml#
Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml: properties:qcom,qmp: More than one condition true in oneOf schema:
	{'description': 'Vendor specific properties must have a type and '
	                'description unless they have a defined, common '
	                'suffix.',


qcom,qcs404-pas.yaml has "com,qmp: false" and it references
"qcom,pas-common.yaml" which has the definition of the property.
However it seems it is treated as new bool property.


----------------------------
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml
index 007349ef51ed..62126e96d2f5 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,qcs404-pas.yaml
@@ -39,6 +39,7 @@ properties:
 
   power-domains: false
   power-domain-names: false
+  qcom,qmp: false
   smd-edge: false
 
 required:



diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
index 1d5e01c8d8bc..72cdcc2b157d 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
@@ -60,6 +60,10 @@ properties:
     maxItems: 1
     description: Reference to the reserved-memory for the Hexagon core
 
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
   qcom,smem-states:
     $ref: /schemas/types.yaml#/definitions/phandle-array
     description: States used by the AP to signal the Hexagon core
----------------------------

Best regards,
Krzysztof


^ permalink raw reply related	[flat|nested] 30+ messages in thread

* Re: (subset) [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL
  2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
                   ` (14 preceding siblings ...)
  2022-11-24 18:43 ` [PATCH v3 15/15] dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks Krzysztof Kozlowski
@ 2022-12-27 18:08 ` Bjorn Andersson
  15 siblings, 0 replies; 30+ messages in thread
From: Bjorn Andersson @ 2022-12-27 18:08 UTC (permalink / raw)
  To: linux-arm-msm, krzysztof.kozlowski+dt, linux-kernel,
	linux-remoteproc, mani, devicetree, konrad.dybcio, agross,
	robh+dt, krzysztof.kozlowski, mathieu.poirier

On Thu, 24 Nov 2022 19:43:18 +0100, Krzysztof Kozlowski wrote:
> Changes since v2
> ================
> 1. Allow only one or two clocks, after dropping clocks related to PIL binding.
> 2. Drop if:then: for the clock and put it directly under properties
> 3. Merge two if:then: clauses for setting interrupts.
> 4. New patches: DTS fixes, qcom,adsp: drop resets and qcom,halt-regs,
>    qcom,qcs404-pas, qcom,sc7180-pas and last msm8996-slpi-pil fix.
> 
> [...]

Applied, thanks!

[05/15] dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs
        commit: c97c4b480fcba2e6ebfacb3990d8b9092916d986
[06/15] dt-bindings: remoteproc: qcom,adsp: split common part
        commit: ea5a10ae295425c9f52577d91b2e45290291d242
[07/15] dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file
        commit: 4e8b39a4d38ebb192ebff977d8a961fd97e7ce5f
[08/15] dt-bindings: remoteproc: qcom,sm8150-pas: split into separate file
        commit: db292776589f1fcbcf2fc6eaebe40a3a2abb4521
[09/15] dt-bindings: remoteproc: qcom,sm6350-pas: split into separate file
        commit: 41729b772c13105ee126ee6fe1bf2cd93c7bd258
[10/15] dt-bindings: remoteproc: qcom,sc8280xp-pas: split into separate file
        commit: 397c619cad8109f5904466ee76d5a1533d2f1590
[11/15] dt-bindings: remoteproc: qcom,sc8180x-pas: split into separate file
        commit: 4b4157518f1ab1276cd08dfab0e51b1409c22e40
[12/15] dt-bindings: remoteproc: qcom,sdx55-pas: split into separate file
        commit: b6f8410eab9270000b8b13b88bc038e9f27c2c45
[13/15] dt-bindings: remoteproc: qcom,qcs404-pas: split into separate file
        commit: 255d7a9581ed4506dddf993aad9dc27bff8296d1
[14/15] dt-bindings: remoteproc: qcom,sc7180-pas: split into separate file
        commit: 8bb92d6fd0b3788b4270eff547cb42cb64db1bff
[15/15] dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks
        commit: 569d3a7580bcbc463920b0d84ca5caf23e808f90

Best regards,
-- 
Bjorn Andersson <andersson@kernel.org>

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2022-12-27 18:09 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-24 18:43 [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Krzysztof Kozlowski
2022-11-24 18:43 ` [PATCH v3 01/15] arm64: dts: qcom: msm8996: drop address/size cells from smd-edge Krzysztof Kozlowski
2022-11-24 18:43 ` [PATCH v3 02/15] arm64: dts: qcom: qcs404: align CDSP PAS node with bindings Krzysztof Kozlowski
2022-11-24 18:43 ` [PATCH v3 03/15] arm64: dts: qcom: sc7180: align MPSS " Krzysztof Kozlowski
2022-11-24 18:43 ` [PATCH v3 04/15] arm64: dts: qcom: sc7280: " Krzysztof Kozlowski
2022-11-24 18:43 ` [PATCH v3 05/15] dt-bindings: remoteproc: qcom,adsp: drop resets and qcom,halt-regs Krzysztof Kozlowski
2022-12-05 19:44   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 06/15] dt-bindings: remoteproc: qcom,adsp: split common part Krzysztof Kozlowski
2022-12-05 19:44   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 07/15] dt-bindings: remoteproc: qcom,sm8350-pas: split into separate file Krzysztof Kozlowski
2022-12-05 19:45   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 08/15] dt-bindings: remoteproc: qcom,sm8150-pas: " Krzysztof Kozlowski
2022-12-05 19:46   ` Rob Herring
2022-12-05 19:49   ` Rob Herring
2022-12-06  7:58     ` Krzysztof Kozlowski
2022-11-24 18:43 ` [PATCH v3 09/15] dt-bindings: remoteproc: qcom,sm6350-pas: " Krzysztof Kozlowski
2022-12-05 19:50   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 10/15] dt-bindings: remoteproc: qcom,sc8280xp-pas: " Krzysztof Kozlowski
2022-12-05 19:50   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 11/15] dt-bindings: remoteproc: qcom,sc8180x-pas: " Krzysztof Kozlowski
2022-12-05 19:51   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 12/15] dt-bindings: remoteproc: qcom,sdx55-pas: " Krzysztof Kozlowski
2022-12-05 19:51   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 13/15] dt-bindings: remoteproc: qcom,qcs404-pas: " Krzysztof Kozlowski
2022-12-05 19:52   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 14/15] dt-bindings: remoteproc: qcom,sc7180-pas: " Krzysztof Kozlowski
2022-12-05 19:52   ` Rob Herring
2022-11-24 18:43 ` [PATCH v3 15/15] dt-bindings: remoteproc: qcom,adsp: correct msm8996-slpi-pil clocks Krzysztof Kozlowski
2022-12-05 19:53   ` Rob Herring
2022-12-27 18:08 ` (subset) [PATCH v3 00/15] dt-bindings: remoteproc: qcom: split and reorganize PAS/PIL Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).