* [PATCH 01/10] arm64: dts: qcom: msm8953: do not use underscore in node name
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 02/10] arm64: dts: qcom: msm8994: remove SMD qcom,local-pid property Krzysztof Kozlowski
` (8 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
Align RPM requests node with DT schema by using hyphen instead of
underscore.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
arch/arm64/boot/dts/qcom/msm8953.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/qcom/msm8953.dtsi b/arch/arm64/boot/dts/qcom/msm8953.dtsi
index 431228faacdd..aca13760bb75 100644
--- a/arch/arm64/boot/dts/qcom/msm8953.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8953.dtsi
@@ -321,7 +321,7 @@ rpm {
qcom,ipc = <&apcs 8 0>;
qcom,smd-edge = <15>;
- rpm_requests: rpm_requests {
+ rpm_requests: rpm-requests {
compatible = "qcom,rpm-msm8953";
qcom,smd-channels = "rpm_requests";
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 02/10] arm64: dts: qcom: msm8994: remove SMD qcom,local-pid property
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 01/10] arm64: dts: qcom: msm8953: do not use underscore in node name Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 03/10] arm64: dts: qcom: add RPM clock controller fallback compatible Krzysztof Kozlowski
` (7 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
The Qualcomm SMD does not use qcom,local-pid property.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
arch/arm64/boot/dts/qcom/msm8994.dtsi | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/arm64/boot/dts/qcom/msm8994.dtsi b/arch/arm64/boot/dts/qcom/msm8994.dtsi
index 8c1dc5155b71..1ff7e2c03ce3 100644
--- a/arch/arm64/boot/dts/qcom/msm8994.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8994.dtsi
@@ -233,7 +233,6 @@ rpm {
interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
qcom,ipc = <&apcs 8 0>;
qcom,smd-edge = <15>;
- qcom,local-pid = <0>;
qcom,remote-pid = <6>;
rpm_requests: rpm-requests {
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 03/10] arm64: dts: qcom: add RPM clock controller fallback compatible
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 01/10] arm64: dts: qcom: msm8953: do not use underscore in node name Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 02/10] arm64: dts: qcom: msm8994: remove SMD qcom,local-pid property Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 04/10] ARM: dts: qcom: msm8974-lge-nexus5: move gpio-keys out of soc Krzysztof Kozlowski
` (6 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
The bindings require a fallback compatible to RPM clock controller.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
arch/arm64/boot/dts/qcom/msm8916.dtsi | 2 +-
arch/arm64/boot/dts/qcom/msm8953.dtsi | 2 +-
arch/arm64/boot/dts/qcom/msm8992.dtsi | 2 +-
arch/arm64/boot/dts/qcom/msm8994.dtsi | 2 +-
arch/arm64/boot/dts/qcom/msm8996.dtsi | 2 +-
arch/arm64/boot/dts/qcom/qcs404.dtsi | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index e34963505e07..cf0482fdf69d 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -299,7 +299,7 @@ rpm_requests: rpm-requests {
qcom,smd-channels = "rpm_requests";
rpmcc: clock-controller {
- compatible = "qcom,rpmcc-msm8916";
+ compatible = "qcom,rpmcc-msm8916", "qcom,rpmcc";
#clock-cells = <1>;
};
diff --git a/arch/arm64/boot/dts/qcom/msm8953.dtsi b/arch/arm64/boot/dts/qcom/msm8953.dtsi
index aca13760bb75..4fa0091d7a5e 100644
--- a/arch/arm64/boot/dts/qcom/msm8953.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8953.dtsi
@@ -326,7 +326,7 @@ rpm_requests: rpm-requests {
qcom,smd-channels = "rpm_requests";
rpmcc: rpmcc {
- compatible = "qcom,rpmcc-msm8953";
+ compatible = "qcom,rpmcc-msm8953", "qcom,rpmcc";
clocks = <&xo_board>;
clock-names = "xo";
#clock-cells = <1>;
diff --git a/arch/arm64/boot/dts/qcom/msm8992.dtsi b/arch/arm64/boot/dts/qcom/msm8992.dtsi
index 58fe58cc7703..c286381240ed 100644
--- a/arch/arm64/boot/dts/qcom/msm8992.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8992.dtsi
@@ -11,7 +11,7 @@
/delete-node/ &cpu7_map;
&rpmcc {
- compatible = "qcom,rpmcc-msm8992";
+ compatible = "qcom,rpmcc-msm8992", "qcom,rpmcc";
};
&tcsr_mutex {
diff --git a/arch/arm64/boot/dts/qcom/msm8994.dtsi b/arch/arm64/boot/dts/qcom/msm8994.dtsi
index 1ff7e2c03ce3..a36b1c7cf10e 100644
--- a/arch/arm64/boot/dts/qcom/msm8994.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8994.dtsi
@@ -240,7 +240,7 @@ rpm_requests: rpm-requests {
qcom,smd-channels = "rpm_requests";
rpmcc: rpmcc {
- compatible = "qcom,rpmcc-msm8994";
+ compatible = "qcom,rpmcc-msm8994", "qcom,rpmcc";
#clock-cells = <1>;
};
diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi
index f0f81c23c16f..527afc90d9ef 100644
--- a/arch/arm64/boot/dts/qcom/msm8996.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi
@@ -456,7 +456,7 @@ rpm_requests: rpm-requests {
qcom,glink-channels = "rpm_requests";
rpmcc: qcom,rpmcc {
- compatible = "qcom,rpmcc-msm8996";
+ compatible = "qcom,rpmcc-msm8996", "qcom,rpmcc";
#clock-cells = <1>;
};
diff --git a/arch/arm64/boot/dts/qcom/qcs404.dtsi b/arch/arm64/boot/dts/qcom/qcs404.dtsi
index 3f06f7cd3cf2..f0ade6a03208 100644
--- a/arch/arm64/boot/dts/qcom/qcs404.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs404.dtsi
@@ -226,7 +226,7 @@ rpm_requests: glink-channel {
qcom,glink-channels = "rpm_requests";
rpmcc: clock-controller {
- compatible = "qcom,rpmcc-qcs404";
+ compatible = "qcom,rpmcc-qcs404", "qcom,rpmcc";
#clock-cells = <1>;
};
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 04/10] ARM: dts: qcom: msm8974-lge-nexus5: move gpio-keys out of soc
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
` (2 preceding siblings ...)
2022-04-01 20:10 ` [PATCH 03/10] arm64: dts: qcom: add RPM clock controller fallback compatible Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 05/10] ARM: dts: qcom: msm8974-samsung-klte: " Krzysztof Kozlowski
` (5 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
The GPIO keys are not part of SoC and they should be defined inside of
the root node.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
.../qcom-msm8974-lge-nexus5-hammerhead.dts | 42 +++++++++----------
1 file changed, 21 insertions(+), 21 deletions(-)
diff --git a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
index 069136170198..6d5fb60e798f 100644
--- a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
@@ -19,6 +19,27 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ gpio-keys {
+ compatible = "gpio-keys";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio_keys_pin_a>;
+
+ volume-up {
+ label = "volume_up";
+ gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
+ linux,input-type = <1>;
+ linux,code = <KEY_VOLUMEUP>;
+ };
+
+ volume-down {
+ label = "volume_down";
+ gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
+ linux,input-type = <1>;
+ linux,code = <KEY_VOLUMEDOWN>;
+ };
+ };
+
smd {
rpm {
rpm_requests {
@@ -448,27 +469,6 @@ bcrmf@1 {
};
};
- gpio-keys {
- compatible = "gpio-keys";
-
- pinctrl-names = "default";
- pinctrl-0 = <&gpio_keys_pin_a>;
-
- volume-up {
- label = "volume_up";
- gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
- linux,input-type = <1>;
- linux,code = <KEY_VOLUMEUP>;
- };
-
- volume-down {
- label = "volume_down";
- gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
- linux,input-type = <1>;
- linux,code = <KEY_VOLUMEDOWN>;
- };
- };
-
serial@f9960000 {
status = "okay";
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 05/10] ARM: dts: qcom: msm8974-samsung-klte: move gpio-keys out of soc
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
` (3 preceding siblings ...)
2022-04-01 20:10 ` [PATCH 04/10] ARM: dts: qcom: msm8974-lge-nexus5: move gpio-keys out of soc Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 07/10] ARM: dts: qcom: do not use underscore in node name Krzysztof Kozlowski
` (4 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
The GPIO keys are not part of SoC and they should be defined inside of
the root node.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
.../boot/dts/qcom-msm8974-samsung-klte.dts | 64 +++++++++----------
1 file changed, 32 insertions(+), 32 deletions(-)
diff --git a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
index 96e1c978b878..6e036a440532 100644
--- a/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-samsung-klte.dts
@@ -20,6 +20,38 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ gpio-keys {
+ compatible = "gpio-keys";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio_keys_pin_a>;
+
+ volume-down {
+ label = "volume_down";
+ gpios = <&pma8084_gpios 2 GPIO_ACTIVE_LOW>;
+ linux,input-type = <1>;
+ linux,code = <KEY_VOLUMEDOWN>;
+ debounce-interval = <15>;
+ };
+
+ home-key {
+ label = "home_key";
+ gpios = <&pma8084_gpios 3 GPIO_ACTIVE_LOW>;
+ linux,input-type = <1>;
+ linux,code = <KEY_HOMEPAGE>;
+ wakeup-source;
+ debounce-interval = <15>;
+ };
+
+ volume-up {
+ label = "volume_up";
+ gpios = <&pma8084_gpios 5 GPIO_ACTIVE_LOW>;
+ linux,input-type = <1>;
+ linux,code = <KEY_VOLUMEUP>;
+ debounce-interval = <15>;
+ };
+ };
+
smd {
rpm {
rpm_requests {
@@ -347,38 +379,6 @@ bluetooth {
};
};
- gpio-keys {
- compatible = "gpio-keys";
-
- pinctrl-names = "default";
- pinctrl-0 = <&gpio_keys_pin_a>;
-
- volume-down {
- label = "volume_down";
- gpios = <&pma8084_gpios 2 GPIO_ACTIVE_LOW>;
- linux,input-type = <1>;
- linux,code = <KEY_VOLUMEDOWN>;
- debounce-interval = <15>;
- };
-
- home-key {
- label = "home_key";
- gpios = <&pma8084_gpios 3 GPIO_ACTIVE_LOW>;
- linux,input-type = <1>;
- linux,code = <KEY_HOMEPAGE>;
- wakeup-source;
- debounce-interval = <15>;
- };
-
- volume-up {
- label = "volume_up";
- gpios = <&pma8084_gpios 5 GPIO_ACTIVE_LOW>;
- linux,input-type = <1>;
- linux,code = <KEY_VOLUMEUP>;
- debounce-interval = <15>;
- };
- };
-
pinctrl@fd510000 {
blsp2_uart8_pins_active: blsp2-uart8-pins-active {
pins = "gpio45", "gpio46", "gpio47", "gpio48";
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 07/10] ARM: dts: qcom: do not use underscore in node name
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
` (4 preceding siblings ...)
2022-04-01 20:10 ` [PATCH 05/10] ARM: dts: qcom: msm8974-samsung-klte: " Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-01 20:10 ` [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema Krzysztof Kozlowski
` (3 subsequent siblings)
9 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
Align RPM requests node with DT schema by using hyphen instead of
underscore.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
arch/arm/boot/dts/qcom-apq8064.dtsi | 8 ++++----
arch/arm/boot/dts/qcom-apq8084.dtsi | 2 +-
arch/arm/boot/dts/qcom-msm8974.dtsi | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index a1c8ae516d21..33a4d3441959 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi
@@ -227,7 +227,7 @@ smem {
smd {
compatible = "qcom,smd";
- modem@0 {
+ modem-edge {
interrupts = <0 37 IRQ_TYPE_EDGE_RISING>;
qcom,ipc = <&l2cc 8 3>;
@@ -236,7 +236,7 @@ modem@0 {
status = "disabled";
};
- q6@1 {
+ q6-edge {
interrupts = <0 90 IRQ_TYPE_EDGE_RISING>;
qcom,ipc = <&l2cc 8 15>;
@@ -245,7 +245,7 @@ q6@1 {
status = "disabled";
};
- dsps@3 {
+ dsps-edge {
interrupts = <0 138 IRQ_TYPE_EDGE_RISING>;
qcom,ipc = <&sps_sic_non_secure 0x4080 0>;
@@ -254,7 +254,7 @@ dsps@3 {
status = "disabled";
};
- riva@6 {
+ riva-edge {
interrupts = <0 198 IRQ_TYPE_EDGE_RISING>;
qcom,ipc = <&l2cc 8 25>;
diff --git a/arch/arm/boot/dts/qcom-apq8084.dtsi b/arch/arm/boot/dts/qcom-apq8084.dtsi
index 52240fc7a1a6..da50a1a0197f 100644
--- a/arch/arm/boot/dts/qcom-apq8084.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8084.dtsi
@@ -470,7 +470,7 @@ rpm {
qcom,ipc = <&apcs 8 0>;
qcom,smd-edge = <15>;
- rpm_requests {
+ rpm-requests {
compatible = "qcom,rpm-apq8084";
qcom,smd-channels = "rpm_requests";
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 02b73739b6f3..2035be2fb8c4 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -1614,7 +1614,7 @@ rpm {
qcom,ipc = <&apcs 8 0>;
qcom,smd-edge = <15>;
- rpm_requests: rpm_requests {
+ rpm_requests: rpm-requests {
compatible = "qcom,rpm-msm8974";
qcom,smd-channels = "rpm_requests";
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
` (5 preceding siblings ...)
2022-04-01 20:10 ` [PATCH 07/10] ARM: dts: qcom: do not use underscore in node name Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-02 13:46 ` Rob Herring
2022-04-04 22:27 ` Rob Herring
2022-04-01 20:10 ` [PATCH 09/10] dt-bindings: clock: qcom,rpmcc: " Krzysztof Kozlowski
` (2 subsequent siblings)
9 siblings, 2 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
Convert the Qualcomm Shared Memory Driver bindings to DT Schema.
Changes against original bindings: enforce only specific names of child
nodes, instead of any names.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
.../regulator/qcom,smd-rpm-regulator.yaml | 2 +-
.../bindings/remoteproc/qcom,q6v5.txt | 2 +-
.../bindings/remoteproc/qcom,wcnss-pil.txt | 2 +-
.../bindings/soc/qcom/qcom,smd-rpm.yaml | 4 +-
.../devicetree/bindings/soc/qcom/qcom,smd.txt | 98 -------------
.../bindings/soc/qcom/qcom,smd.yaml | 137 ++++++++++++++++++
6 files changed, 142 insertions(+), 103 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml
diff --git a/Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.yaml b/Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.yaml
index f052e03be402..0daad8e3e260 100644
--- a/Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.yaml
+++ b/Documentation/devicetree/bindings/regulator/qcom,smd-rpm-regulator.yaml
@@ -12,7 +12,7 @@ description:
resides as a subnode of the SMD. As such, the SMD-RPM regulator requires
that the SMD and RPM nodes be present.
- Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt for
+ Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml for
information pertaining to the SMD node.
Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt b/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt
index 8f1507052afd..b677900b3aae 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt
@@ -250,7 +250,7 @@ the memory regions used by the Hexagon firmware. Each sub-node must contain:
The Hexagon node may also have an subnode named either "smd-edge" or
"glink-edge" that describes the communication edge, channels and devices
-related to the Hexagon. See ../soc/qcom/qcom,smd.txt and
+related to the Hexagon. See ../soc/qcom/qcom,smd.yaml and
../soc/qcom/qcom,glink.txt for details on how to describe these.
= EXAMPLE
diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt b/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt
index a83080b8905c..ac423f4c3f1b 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt
@@ -111,7 +111,7 @@ and its resource dependencies. It is described by the following properties:
The wcnss node can also have an subnode named "smd-edge" that describes the SMD
edge, channels and devices related to the WCNSS.
-See ../soc/qcom/qcom,smd.txt for details on how to describe the SMD edge.
+See ../soc/qcom/qcom,smd.yaml for details on how to describe the SMD edge.
= EXAMPLE
The following example describes the resources needed to boot control the WCNSS,
diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
index b32457c2fc0b..bf862a11f721 100644
--- a/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
@@ -12,7 +12,7 @@ description: |
to vote for state of the system resources, such as clocks, regulators and bus
frequencies.
- The SMD information for the RPM edge should be filled out. See qcom,smd.txt
+ The SMD information for the RPM edge should be filled out. See qcom,smd.yaml
for the required edge properties. All SMD related properties will reside
within the RPM node itself.
@@ -82,7 +82,7 @@ examples:
qcom,ipc = <&apcs 8 0>;
qcom,smd-edge = <15>;
- rpm_requests {
+ rpm-requests {
compatible = "qcom,rpm-msm8974";
qcom,smd-channels = "rpm_requests";
diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt b/Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt
deleted file mode 100644
index 234ae2256501..000000000000
--- a/Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt
+++ /dev/null
@@ -1,98 +0,0 @@
-Qualcomm Shared Memory Driver (SMD) binding
-
-This binding describes the Qualcomm Shared Memory Driver, a fifo based
-communication channel for sending data between the various subsystems in
-Qualcomm platforms.
-
-- compatible:
- Usage: required
- Value type: <stringlist>
- Definition: must be "qcom,smd"
-
-= EDGES
-
-Each subnode of the SMD node represents a remote subsystem or a remote
-processor of some sort - or in SMD language an "edge". The name of the edges
-are not important.
-The edge is described by the following properties:
-
-- interrupts:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: should specify the IRQ used by the remote processor to
- signal this processor about communication related updates
-
-- mboxes:
- Usage: required
- Value type: <prop-encoded-array>
- Definition: reference to the associated doorbell in APCS, as described
- in mailbox/mailbox.txt
-
-- qcom,ipc:
- Usage: required, unless mboxes is specified
- Value type: <prop-encoded-array>
- Definition: three entries specifying the outgoing ipc bit used for
- signaling the remote processor:
- - phandle to a syscon node representing the apcs registers
- - u32 representing offset to the register within the syscon
- - u32 representing the ipc bit within the register
-
-- qcom,smd-edge:
- Usage: required
- Value type: <u32>
- Definition: the identifier of the remote processor in the smd channel
- allocation table
-
-- qcom,remote-pid:
- Usage: optional
- Value type: <u32>
- Definition: the identifier for the remote processor as known by the rest
- of the system.
-
-- label:
- Usage: optional
- Value type: <string>
- Definition: name of the edge, used for debugging and identification
- purposes. The node name will be used if this is not
- present.
-
-= SMD DEVICES
-
-In turn, subnodes of the "edges" represent devices tied to SMD channels on that
-"edge". The names of the devices are not important. The properties of these
-nodes are defined by the individual bindings for the SMD devices - but must
-contain the following property:
-
-- qcom,smd-channels:
- Usage: required
- Value type: <stringlist>
- Definition: a list of channels tied to this device, used for matching
- the device to channels
-
-= EXAMPLE
-
-The following example represents a smd node, with one edge representing the
-"rpm" subsystem. For the "rpm" subsystem we have a device tied to the
-"rpm_request" channel.
-
- apcs: syscon@f9011000 {
- compatible = "syscon";
- reg = <0xf9011000 0x1000>;
- };
-
- smd {
- compatible = "qcom,smd";
-
- rpm {
- interrupts = <0 168 1>;
- qcom,ipc = <&apcs 8 0>;
- qcom,smd-edge = <15>;
-
- rpm_requests {
- compatible = "qcom,rpm-msm8974";
- qcom,smd-channels = "rpm_requests";
-
- ...
- };
- };
- };
diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml
new file mode 100644
index 000000000000..e6f9ffa1c0ea
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml
@@ -0,0 +1,137 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/soc/qcom/qcom,smd.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Shared Memory Driver
+
+maintainers:
+ - Andy Gross <agross@kernel.org>
+ - Bjorn Andersson <bjorn.andersson@linaro.org>
+ - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+
+description:
+ The Qualcomm Shared Memory Driver is a FIFO based communication channel for
+ sending data between the various subsystems in Qualcomm platforms.
+
+properties:
+ compatible:
+ const: qcom,smd
+
+patternProperties:
+ "^.*-edge|rpm$":
+ type: object
+ description:
+ Each subnode of the SMD node represents a remote subsystem or a remote
+ processor of some sort - or in SMD language an "edge". The name of the
+ edges are not important.
+
+ properties:
+ interrupts:
+ maxItems: 1
+
+ label:
+ $ref: /schemas/types.yaml#/definitions/string
+ description:
+ Name of the edge, used for debugging and identification purposes. The
+ node name will be used if this is not present.
+
+ mboxes:
+ maxItems: 1
+ description:
+ Reference to the mailbox representing the outgoing doorbell in APCS for
+ this client.
+
+ qcom,ipc:
+ $ref: /schemas/types.yaml#/definitions/phandle-array
+ items:
+ - items:
+ - description: phandle to a syscon node representing the APCS registers
+ - description: u32 representing offset to the register within the syscon
+ - description: u32 representing the ipc bit within the register
+ description:
+ Three entries specifying the outgoing ipc bit used for signaling the
+ remote processor.
+
+ qcom,smd-edge:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The identifier of the remote processor in the smd channel allocation
+ table.
+
+ qcom,remote-pid:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The identifier for the remote processor as known by the rest of the
+ system.
+
+ # Binding for edge subnodes is not complete
+ patternProperties:
+ "^rpm-requests$":
+ type: object
+ description:
+ In turn, subnodes of the "edges" represent devices tied to SMD
+ channels on that "edge". The names of the devices are not
+ important. The properties of these nodes are defined by the
+ individual bindings for the SMD devices.
+
+ properties:
+ qcom,smd-channels:
+ $ref: /schemas/types.yaml#/definitions/string-array
+ minItems: 1
+ maxItems: 32
+ description:
+ A list of channels tied to this device, used for matching the
+ device to channels.
+
+ required:
+ - compatible
+ - qcom,smd-channels
+
+ additionalProperties: true
+
+ required:
+ - interrupts
+ - qcom,smd-edge
+
+ oneOf:
+ - required:
+ - mboxes
+ - required:
+ - qcom,ipc
+
+ additionalProperties: false
+
+required:
+ - compatible
+
+additionalProperties: false
+
+examples:
+ # The following example represents a smd node, with one edge representing the
+ # "rpm" subsystem. For the "rpm" subsystem we have a device tied to the
+ # "rpm_request" channel.
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+ shared-memory {
+ compatible = "qcom,smd";
+
+ rpm {
+ interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
+ qcom,ipc = <&apcs 8 0>;
+ qcom,smd-edge = <15>;
+
+ rpm-requests {
+ compatible = "qcom,rpm-msm8974";
+ qcom,smd-channels = "rpm_requests";
+
+ clock-controller {
+ compatible = "qcom,rpmcc-msm8974", "qcom,rpmcc";
+ #clock-cells = <1>;
+ };
+
+ };
+ };
+ };
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema
2022-04-01 20:10 ` [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema Krzysztof Kozlowski
@ 2022-04-02 13:46 ` Rob Herring
2022-04-02 14:54 ` Krzysztof Kozlowski
2022-04-04 22:27 ` Rob Herring
1 sibling, 1 reply; 16+ messages in thread
From: Rob Herring @ 2022-04-02 13:46 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Mathieu Poirier, Kathiravan T, linux-clk, Stephen Boyd,
linux-remoteproc, Liam Girdwood, Krzysztof Kozlowski,
linux-arm-msm, Rob Herring, devicetree, linux-kernel,
Michael Turquette, Mark Brown, Bjorn Andersson, Andy Gross
On Fri, 01 Apr 2022 22:10:33 +0200, Krzysztof Kozlowski wrote:
> Convert the Qualcomm Shared Memory Driver bindings to DT Schema.
>
> Changes against original bindings: enforce only specific names of child
> nodes, instead of any names.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> .../regulator/qcom,smd-rpm-regulator.yaml | 2 +-
> .../bindings/remoteproc/qcom,q6v5.txt | 2 +-
> .../bindings/remoteproc/qcom,wcnss-pil.txt | 2 +-
> .../bindings/soc/qcom/qcom,smd-rpm.yaml | 4 +-
> .../devicetree/bindings/soc/qcom/qcom,smd.txt | 98 -------------
> .../bindings/soc/qcom/qcom,smd.yaml | 137 ++++++++++++++++++
> 6 files changed, 142 insertions(+), 103 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt
> create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml
>
My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):
yamllint warnings/errors:
dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/soc/qcom/qcom,smd.example.dt.yaml: rpm-requests: 'clock-controller' does not match any of the regexes: 'pinctrl-[0-9]+'
From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
Documentation/devicetree/bindings/soc/qcom/qcom,smd.example.dt.yaml:0:0: /example-0/shared-memory/rpm/rpm-requests/clock-controller: failed to match any schema with compatible: ['qcom,rpmcc-msm8974', 'qcom,rpmcc']
Documentation/devicetree/bindings/soc/qcom/qcom,smd.example.dt.yaml:0:0: /example-0/shared-memory/rpm/rpm-requests/clock-controller: failed to match any schema with compatible: ['qcom,rpmcc-msm8974', 'qcom,rpmcc']
doc reference errors (make refcheckdocs):
See https://patchwork.ozlabs.org/patch/
This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.
If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:
pip3 install dtschema --upgrade
Please check and re-submit.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema
2022-04-02 13:46 ` Rob Herring
@ 2022-04-02 14:54 ` Krzysztof Kozlowski
0 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-02 14:54 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski
Cc: Mathieu Poirier, Kathiravan T, linux-clk, Stephen Boyd,
linux-remoteproc, Liam Girdwood, Krzysztof Kozlowski,
linux-arm-msm, Rob Herring, devicetree, linux-kernel,
Michael Turquette, Mark Brown, Bjorn Andersson, Andy Gross
On 02/04/2022 15:46, Rob Herring wrote:
> On Fri, 01 Apr 2022 22:10:33 +0200, Krzysztof Kozlowski wrote:
>> Convert the Qualcomm Shared Memory Driver bindings to DT Schema.
>>
>> Changes against original bindings: enforce only specific names of child
>> nodes, instead of any names.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>> ---
>> .../regulator/qcom,smd-rpm-regulator.yaml | 2 +-
>> .../bindings/remoteproc/qcom,q6v5.txt | 2 +-
>> .../bindings/remoteproc/qcom,wcnss-pil.txt | 2 +-
>> .../bindings/soc/qcom/qcom,smd-rpm.yaml | 4 +-
>> .../devicetree/bindings/soc/qcom/qcom,smd.txt | 98 -------------
>> .../bindings/soc/qcom/qcom,smd.yaml | 137 ++++++++++++++++++
>> 6 files changed, 142 insertions(+), 103 deletions(-)
>> delete mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt
>> create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml
>>
>
> My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
> on your patch (DT_CHECKER_FLAGS is new in v5.13):
>
> yamllint warnings/errors:
>
> dtschema/dtc warnings/errors:
> /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/soc/qcom/qcom,smd.example.dt.yaml: rpm-requests: 'clock-controller' does not match any of the regexes: 'pinctrl-[0-9]+'
> From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
> Documentation/devicetree/bindings/soc/qcom/qcom,smd.example.dt.yaml:0:0: /example-0/shared-memory/rpm/rpm-requests/clock-controller: failed to match any schema with compatible: ['qcom,rpmcc-msm8974', 'qcom,rpmcc']
> Documentation/devicetree/bindings/soc/qcom/qcom,smd.example.dt.yaml:0:0: /example-0/shared-memory/rpm/rpm-requests/clock-controller: failed to match any schema with compatible: ['qcom,rpmcc-msm8974', 'qcom,rpmcc']
These are being fixed by patch 9-10, so their order could be reversed to
avoid the warnings.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema
2022-04-01 20:10 ` [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema Krzysztof Kozlowski
2022-04-02 13:46 ` Rob Herring
@ 2022-04-04 22:27 ` Rob Herring
1 sibling, 0 replies; 16+ messages in thread
From: Rob Herring @ 2022-04-04 22:27 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Michael Turquette, Mark Brown, Liam Girdwood, linux-clk,
linux-arm-msm, devicetree, Mathieu Poirier, linux-kernel,
Rob Herring, Bjorn Andersson, Andy Gross, Kathiravan T,
Stephen Boyd, linux-remoteproc, Krzysztof Kozlowski
On Fri, 01 Apr 2022 22:10:33 +0200, Krzysztof Kozlowski wrote:
> Convert the Qualcomm Shared Memory Driver bindings to DT Schema.
>
> Changes against original bindings: enforce only specific names of child
> nodes, instead of any names.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> .../regulator/qcom,smd-rpm-regulator.yaml | 2 +-
> .../bindings/remoteproc/qcom,q6v5.txt | 2 +-
> .../bindings/remoteproc/qcom,wcnss-pil.txt | 2 +-
> .../bindings/soc/qcom/qcom,smd-rpm.yaml | 4 +-
> .../devicetree/bindings/soc/qcom/qcom,smd.txt | 98 -------------
> .../bindings/soc/qcom/qcom,smd.yaml | 137 ++++++++++++++++++
> 6 files changed, 142 insertions(+), 103 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.txt
> create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml
>
Reviewed-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 09/10] dt-bindings: clock: qcom,rpmcc: convert to dtschema
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
` (6 preceding siblings ...)
2022-04-01 20:10 ` [PATCH 08/10] dt-bindings: soc: qcom,smd: convert to dtschema Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-04 22:29 ` Rob Herring
2022-04-01 20:10 ` [PATCH 10/10] dt-bindings: clock: qcom,rpmcc: add clocks property Krzysztof Kozlowski
[not found] ` <20220401201035.189106-7-krzysztof.kozlowski@linaro.org>
9 siblings, 1 reply; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
Convert the Qualcomm RPM Clock Controller bindings to DT schema and
include it in parent's schema (SMD RPM).
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
.../devicetree/bindings/clock/qcom,rpmcc.txt | 63 -----------------
.../devicetree/bindings/clock/qcom,rpmcc.yaml | 69 +++++++++++++++++++
.../bindings/soc/qcom/qcom,smd-rpm.yaml | 4 ++
3 files changed, 73 insertions(+), 63 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/clock/qcom,rpmcc.txt
create mode 100644 Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
diff --git a/Documentation/devicetree/bindings/clock/qcom,rpmcc.txt b/Documentation/devicetree/bindings/clock/qcom,rpmcc.txt
deleted file mode 100644
index da295c3c004b..000000000000
--- a/Documentation/devicetree/bindings/clock/qcom,rpmcc.txt
+++ /dev/null
@@ -1,63 +0,0 @@
-Qualcomm RPM Clock Controller Binding
-------------------------------------------------
-The RPM is a dedicated hardware engine for managing the shared
-SoC resources in order to keep the lowest power profile. It
-communicates with other hardware subsystems via shared memory
-and accepts clock requests, aggregates the requests and turns
-the clocks on/off or scales them on demand.
-
-Required properties :
-- compatible : shall contain only one of the following. The generic
- compatible "qcom,rpmcc" should be also included.
-
- "qcom,rpmcc-mdm9607", "qcom,rpmcc"
- "qcom,rpmcc-msm8660", "qcom,rpmcc"
- "qcom,rpmcc-apq8060", "qcom,rpmcc"
- "qcom,rpmcc-msm8226", "qcom,rpmcc"
- "qcom,rpmcc-msm8916", "qcom,rpmcc"
- "qcom,rpmcc-msm8936", "qcom,rpmcc"
- "qcom,rpmcc-msm8953", "qcom,rpmcc"
- "qcom,rpmcc-msm8974", "qcom,rpmcc"
- "qcom,rpmcc-msm8976", "qcom,rpmcc"
- "qcom,rpmcc-apq8064", "qcom,rpmcc"
- "qcom,rpmcc-ipq806x", "qcom,rpmcc"
- "qcom,rpmcc-msm8992",·"qcom,rpmcc"
- "qcom,rpmcc-msm8994",·"qcom,rpmcc"
- "qcom,rpmcc-msm8996", "qcom,rpmcc"
- "qcom,rpmcc-msm8998", "qcom,rpmcc"
- "qcom,rpmcc-qcm2290", "qcom,rpmcc"
- "qcom,rpmcc-qcs404", "qcom,rpmcc"
- "qcom,rpmcc-sdm660", "qcom,rpmcc"
- "qcom,rpmcc-sm6115", "qcom,rpmcc"
- "qcom,rpmcc-sm6125", "qcom,rpmcc"
-
-- #clock-cells : shall contain 1
-
-The clock enumerators are defined in <dt-bindings/clock/qcom,rpmcc.h>
-and come in pairs: FOO_CLK followed by FOO_A_CLK. The latter clock
-is an "active" clock, which means that the consumer only care that the
-clock is available when the apps CPU subsystem is active, i.e. not
-suspended or in deep idle. If it is important that the clock keeps running
-during system suspend, you need to specify the non-active clock, the one
-not containing *_A_* in the enumerator name.
-
-Example:
- smd {
- compatible = "qcom,smd";
-
- rpm {
- interrupts = <0 168 1>;
- qcom,ipc = <&apcs 8 0>;
- qcom,smd-edge = <15>;
-
- rpm_requests {
- compatible = "qcom,rpm-msm8916";
- qcom,smd-channels = "rpm_requests";
-
- rpmcc: clock-controller {
- compatible = "qcom,rpmcc-msm8916", "qcom,rpmcc";
- #clock-cells = <1>;
- };
- };
- };
- };
diff --git a/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml b/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
new file mode 100644
index 000000000000..6a492b1ebc7c
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/clock/qcom,rpmcc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm RPM Clock Controller
+
+maintainers:
+ - Bjorn Andersson <bjorn.andersson@linaro.org>
+ - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+
+description: |
+ The clock enumerators are defined in <dt-bindings/clock/qcom,rpmcc.h> and
+ come in pairs:: FOO_CLK followed by FOO_A_CLK. The latter clock is
+ an "active" clock, which means that the consumer only care that the clock is
+ available when the apps CPU subsystem is active, i.e. not suspended or in
+ deep idle. If it is important that the clock keeps running during system
+ suspend, you need to specify the non-active clock, the one not containing
+ *_A_* in the enumerator name.
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - qcom,rpmcc-apq8060
+ - qcom,rpmcc-apq8064
+ - qcom,rpmcc-ipq806x
+ - qcom,rpmcc-mdm9607
+ - qcom,rpmcc-msm8226
+ - qcom,rpmcc-msm8660
+ - qcom,rpmcc-msm8916
+ - qcom,rpmcc-msm8936
+ - qcom,rpmcc-msm8953
+ - qcom,rpmcc-msm8974
+ - qcom,rpmcc-msm8976
+ - qcom,rpmcc-msm8992
+ - qcom,rpmcc-msm8994
+ - qcom,rpmcc-msm8996
+ - qcom,rpmcc-msm8998
+ - qcom,rpmcc-qcm2290
+ - qcom,rpmcc-qcs404
+ - qcom,rpmcc-sdm660
+ - qcom,rpmcc-sm6115
+ - qcom,rpmcc-sm6125
+ - const: qcom,rpmcc
+
+ '#clock-cells':
+ const: 1
+
+required:
+ - compatible
+ - '#clock-cells'
+
+additionalProperties: false
+
+examples:
+ - |
+ rpm {
+ rpm-requests {
+ compatible = "qcom,rpm-msm8916";
+ qcom,smd-channels = "rpm_requests";
+
+ clock-controller {
+ compatible = "qcom,rpmcc-msm8916", "qcom,rpmcc";
+ #clock-cells = <1>;
+ };
+ };
+ };
diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
index bf862a11f721..49e9755b3a90 100644
--- a/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml
@@ -45,6 +45,10 @@ properties:
- qcom,rpm-qcm2290
- qcom,rpm-qcs404
+ clock-controller:
+ $ref: /schemas/clock/qcom,rpmcc.yaml#
+ unevaluatedProperties: false
+
qcom,smd-channels:
$ref: /schemas/types.yaml#/definitions/string-array
description: Channel name used for the RPM communication
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [PATCH 09/10] dt-bindings: clock: qcom,rpmcc: convert to dtschema
2022-04-01 20:10 ` [PATCH 09/10] dt-bindings: clock: qcom,rpmcc: " Krzysztof Kozlowski
@ 2022-04-04 22:29 ` Rob Herring
0 siblings, 0 replies; 16+ messages in thread
From: Rob Herring @ 2022-04-04 22:29 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: linux-kernel, Mark Brown, linux-remoteproc, Michael Turquette,
Andy Gross, Liam Girdwood, Mathieu Poirier, devicetree,
Rob Herring, linux-clk, Krzysztof Kozlowski, Bjorn Andersson,
linux-arm-msm, Kathiravan T, Stephen Boyd
On Fri, 01 Apr 2022 22:10:34 +0200, Krzysztof Kozlowski wrote:
> Convert the Qualcomm RPM Clock Controller bindings to DT schema and
> include it in parent's schema (SMD RPM).
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> .../devicetree/bindings/clock/qcom,rpmcc.txt | 63 -----------------
> .../devicetree/bindings/clock/qcom,rpmcc.yaml | 69 +++++++++++++++++++
> .../bindings/soc/qcom/qcom,smd-rpm.yaml | 4 ++
> 3 files changed, 73 insertions(+), 63 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/clock/qcom,rpmcc.txt
> create mode 100644 Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
>
Reviewed-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 10/10] dt-bindings: clock: qcom,rpmcc: add clocks property
2022-04-01 20:10 [PATCH 00/10] qcom: convert to dtschema qcom,smd and qcom,rpmcc Krzysztof Kozlowski
` (7 preceding siblings ...)
2022-04-01 20:10 ` [PATCH 09/10] dt-bindings: clock: qcom,rpmcc: " Krzysztof Kozlowski
@ 2022-04-01 20:10 ` Krzysztof Kozlowski
2022-04-04 22:29 ` Rob Herring
[not found] ` <20220401201035.189106-7-krzysztof.kozlowski@linaro.org>
9 siblings, 1 reply; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-01 20:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
Cc: Krzysztof Kozlowski
The RPM clock controller receive input clock ("xo"). It is modelled on
only one chip - MSM8953.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml b/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
index 6a492b1ebc7c..9d296b89a8d0 100644
--- a/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
+++ b/Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml
@@ -48,6 +48,12 @@ properties:
'#clock-cells':
const: 1
+ clocks:
+ maxItems: 1
+
+ clock-names:
+ const: xo
+
required:
- compatible
- '#clock-cells'
--
2.32.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [PATCH 10/10] dt-bindings: clock: qcom,rpmcc: add clocks property
2022-04-01 20:10 ` [PATCH 10/10] dt-bindings: clock: qcom,rpmcc: add clocks property Krzysztof Kozlowski
@ 2022-04-04 22:29 ` Rob Herring
0 siblings, 0 replies; 16+ messages in thread
From: Rob Herring @ 2022-04-04 22:29 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Mark Brown, Andy Gross, linux-clk, linux-arm-msm, linux-kernel,
linux-remoteproc, devicetree, Michael Turquette,
Krzysztof Kozlowski, Liam Girdwood, Mathieu Poirier, Kathiravan T,
Bjorn Andersson, Rob Herring, Stephen Boyd
On Fri, 01 Apr 2022 22:10:35 +0200, Krzysztof Kozlowski wrote:
> The RPM clock controller receive input clock ("xo"). It is modelled on
> only one chip - MSM8953.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> Documentation/devicetree/bindings/clock/qcom,rpmcc.yaml | 6 ++++++
> 1 file changed, 6 insertions(+)
>
Reviewed-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 16+ messages in thread
[parent not found: <20220401201035.189106-7-krzysztof.kozlowski@linaro.org>]
* Re: [PATCH 06/10] ARM: dts: qcom: msm8974: override nodes by label
[not found] ` <20220401201035.189106-7-krzysztof.kozlowski@linaro.org>
@ 2022-04-18 15:10 ` Krzysztof Kozlowski
0 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-04-18 15:10 UTC (permalink / raw)
To: Bjorn Andersson, Andy Gross, Michael Turquette, Stephen Boyd,
Rob Herring, Krzysztof Kozlowski, Liam Girdwood, Mark Brown,
Mathieu Poirier, Kathiravan T, linux-arm-msm, linux-clk,
devicetree, linux-kernel, linux-remoteproc
On 01/04/2022 22:10, Krzysztof Kozlowski wrote:
> Using node paths to extend or override a device tree node is error
> prone. If there was a typo error, a new node will be created instead of
> extending the existing node. This will lead to run-time errors that
> could be hard to detect.
>
> A mistyped label on the other hand, will cause a dtc compile error
> (during build time). This also reduces the indentation making the code
> easier to read.
>
> Re-order the overrides by label name. The pre/post DTBS are the same.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> .../arm/boot/dts/qcom-apq8074-dragonboard.dts | 614 +++++-----
> .../boot/dts/qcom-msm8974-fairphone-fp2.dts | 581 +++++----
> .../qcom-msm8974-lge-nexus5-hammerhead.dts | 1075 ++++++++--------
> .../boot/dts/qcom-msm8974-samsung-klte.dts | 1083 ++++++++---------
> .../dts/qcom-msm8974-sony-xperia-amami.dts | 569 +++++----
> .../dts/qcom-msm8974-sony-xperia-castor.dts | 908 +++++++-------
> .../dts/qcom-msm8974-sony-xperia-honami.dts | 636 +++++-----
> arch/arm/boot/dts/qcom-msm8974.dtsi | 16 +-
> 8 files changed, 2730 insertions(+), 2752 deletions(-)
>
Hi Bjorn,
I see you applied other arm-dts patches from this set, except this one.
Any comments here? This is quite a big one, so maybe it had trouble
making through the discussion lists?
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 16+ messages in thread