* [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate
@ 2023-09-01 8:18 Krzysztof Kozlowski
2023-09-01 8:18 ` [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: " Krzysztof Kozlowski
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2023-09-01 8:18 UTC (permalink / raw)
To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-arm-msm, devicetree,
linux-kernel
Cc: Krzysztof Kozlowski, Dmitry Baryshkov, stable
Commit 704e26678c8d ("arm64: dts: qcom: apq8096-db820c: drop simple-bus
from clocks") removed "simple-bus" compatible from "clocks" node, but
one of the clocks - divclk1 - is a gpio-gate-clock, which does not have
CLK_OF_DECLARE. This means it will not be instantiated if placed in
some subnode. Move the clocks to the root node, so regular devices will
be populated.
Reported-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Closes: https://lore.kernel.org/all/CAA8EJprF==p87oN+RiwAiNeURF1JcHGfL2Ez5zxqYPRRbN-hhg@mail.gmail.com/
Cc: <stable@vger.kernel.org>
Fixes: 704e26678c8d ("arm64: dts: qcom: apq8096-db820c: drop simple-bus from clocks")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
arch/arm64/boot/dts/qcom/apq8096-db820c.dts | 32 ++++++++++-----------
1 file changed, 15 insertions(+), 17 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
index 385b178314db..3067a4091a7a 100644
--- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
+++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
@@ -62,25 +62,23 @@ chosen {
stdout-path = "serial0:115200n8";
};
- clocks {
- divclk4: divclk4 {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- clock-frequency = <32768>;
- clock-output-names = "divclk4";
+ div1_mclk: divclk1 {
+ compatible = "gpio-gate-clock";
+ pinctrl-0 = <&audio_mclk>;
+ pinctrl-names = "default";
+ clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
+ #clock-cells = <0>;
+ enable-gpios = <&pm8994_gpios 15 0>;
+ };
- pinctrl-names = "default";
- pinctrl-0 = <&divclk4_pin_a>;
- };
+ divclk4: divclk4 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ clock-output-names = "divclk4";
- div1_mclk: divclk1 {
- compatible = "gpio-gate-clock";
- pinctrl-0 = <&audio_mclk>;
- pinctrl-names = "default";
- clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
- #clock-cells = <0>;
- enable-gpios = <&pm8994_gpios 15 0>;
- };
+ pinctrl-names = "default";
+ pinctrl-0 = <&divclk4_pin_a>;
};
gpio-keys {
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: fix missing clock populate
2023-09-01 8:18 [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate Krzysztof Kozlowski
@ 2023-09-01 8:18 ` Krzysztof Kozlowski
2023-09-01 16:36 ` Dmitry Baryshkov
2023-09-05 21:52 ` Dmitry Baryshkov
2023-09-05 21:51 ` [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: " Dmitry Baryshkov
2023-09-20 17:14 ` Bjorn Andersson
2 siblings, 2 replies; 6+ messages in thread
From: Krzysztof Kozlowski @ 2023-09-01 8:18 UTC (permalink / raw)
To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-arm-msm, devicetree,
linux-kernel
Cc: Krzysztof Kozlowski, Dmitry Baryshkov, stable
Commit 338958e30c68 ("arm64: dts: qcom: msm8996-xiaomi: drop simple-bus
from clocks") removed "simple-bus" compatible from "clocks" node, but
one of the clocks - divclk1 - is a gpio-gate-clock, which does not have
CLK_OF_DECLARE. This means it will not be instantiated if placed in
some subnode. Move the clocks to the root node, so regular devices will
be populated.
Reported-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Closes: https://lore.kernel.org/all/CAA8EJprF==p87oN+RiwAiNeURF1JcHGfL2Ez5zxqYPRRbN-hhg@mail.gmail.com/
Cc: <stable@vger.kernel.org>
Fixes: 338958e30c68 ("arm64: dts: qcom: msm8996-xiaomi: drop simple-bus from clocks")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
.../boot/dts/qcom/msm8996-xiaomi-common.dtsi | 32 +++++++++----------
.../boot/dts/qcom/msm8996-xiaomi-gemini.dts | 16 ++++------
2 files changed, 22 insertions(+), 26 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
index bcd2397eb373..06f8ff624181 100644
--- a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
@@ -11,26 +11,24 @@
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
/ {
- clocks {
- divclk1_cdc: divclk1 {
- compatible = "gpio-gate-clock";
- clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
- #clock-cells = <0>;
- enable-gpios = <&pm8994_gpios 15 GPIO_ACTIVE_HIGH>;
+ divclk1_cdc: divclk1 {
+ compatible = "gpio-gate-clock";
+ clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
+ #clock-cells = <0>;
+ enable-gpios = <&pm8994_gpios 15 GPIO_ACTIVE_HIGH>;
- pinctrl-names = "default";
- pinctrl-0 = <&divclk1_default>;
- };
+ pinctrl-names = "default";
+ pinctrl-0 = <&divclk1_default>;
+ };
- divclk4: divclk4 {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- clock-frequency = <32768>;
- clock-output-names = "divclk4";
+ divclk4: divclk4 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ clock-output-names = "divclk4";
- pinctrl-names = "default";
- pinctrl-0 = <&divclk4_pin_a>;
- };
+ pinctrl-names = "default";
+ pinctrl-0 = <&divclk4_pin_a>;
};
gpio-keys {
diff --git a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
index d1066edaea47..f8e9d90afab0 100644
--- a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
+++ b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
@@ -20,16 +20,14 @@ / {
qcom,pmic-id = <0x20009 0x2000a 0x00 0x00>;
qcom,board-id = <31 0>;
- clocks {
- divclk2_haptics: divclk2 {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- clock-frequency = <32768>;
- clock-output-names = "divclk2";
+ divclk2_haptics: divclk2 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ clock-output-names = "divclk2";
- pinctrl-names = "default";
- pinctrl-0 = <&divclk2_pin_a>;
- };
+ pinctrl-names = "default";
+ pinctrl-0 = <&divclk2_pin_a>;
};
};
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: fix missing clock populate
2023-09-01 8:18 ` [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: " Krzysztof Kozlowski
@ 2023-09-01 16:36 ` Dmitry Baryshkov
2023-09-05 21:52 ` Dmitry Baryshkov
1 sibling, 0 replies; 6+ messages in thread
From: Dmitry Baryshkov @ 2023-09-01 16:36 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, linux-arm-msm, devicetree,
linux-kernel, stable
On Fri, 1 Sept 2023 at 11:18, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> Commit 338958e30c68 ("arm64: dts: qcom: msm8996-xiaomi: drop simple-bus
> from clocks") removed "simple-bus" compatible from "clocks" node, but
> one of the clocks - divclk1 - is a gpio-gate-clock, which does not have
> CLK_OF_DECLARE. This means it will not be instantiated if placed in
> some subnode. Move the clocks to the root node, so regular devices will
> be populated.
I don't think this is a good idea. We have other fixed clocks under
/clocks. And they have been always working. I think the better way
would be to teach clk-gpio to work with CLK_OF_DECLARE
>
> Reported-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> Closes: https://lore.kernel.org/all/CAA8EJprF==p87oN+RiwAiNeURF1JcHGfL2Ez5zxqYPRRbN-hhg@mail.gmail.com/
> Cc: <stable@vger.kernel.org>
> Fixes: 338958e30c68 ("arm64: dts: qcom: msm8996-xiaomi: drop simple-bus from clocks")
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> .../boot/dts/qcom/msm8996-xiaomi-common.dtsi | 32 +++++++++----------
> .../boot/dts/qcom/msm8996-xiaomi-gemini.dts | 16 ++++------
> 2 files changed, 22 insertions(+), 26 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
> index bcd2397eb373..06f8ff624181 100644
> --- a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
> @@ -11,26 +11,24 @@
> #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
>
> / {
> - clocks {
> - divclk1_cdc: divclk1 {
> - compatible = "gpio-gate-clock";
> - clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
> - #clock-cells = <0>;
> - enable-gpios = <&pm8994_gpios 15 GPIO_ACTIVE_HIGH>;
> + divclk1_cdc: divclk1 {
> + compatible = "gpio-gate-clock";
> + clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
> + #clock-cells = <0>;
> + enable-gpios = <&pm8994_gpios 15 GPIO_ACTIVE_HIGH>;
>
> - pinctrl-names = "default";
> - pinctrl-0 = <&divclk1_default>;
> - };
> + pinctrl-names = "default";
> + pinctrl-0 = <&divclk1_default>;
> + };
>
> - divclk4: divclk4 {
> - compatible = "fixed-clock";
> - #clock-cells = <0>;
> - clock-frequency = <32768>;
> - clock-output-names = "divclk4";
> + divclk4: divclk4 {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <32768>;
> + clock-output-names = "divclk4";
>
> - pinctrl-names = "default";
> - pinctrl-0 = <&divclk4_pin_a>;
> - };
> + pinctrl-names = "default";
> + pinctrl-0 = <&divclk4_pin_a>;
> };
>
> gpio-keys {
> diff --git a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
> index d1066edaea47..f8e9d90afab0 100644
> --- a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
> +++ b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
> @@ -20,16 +20,14 @@ / {
> qcom,pmic-id = <0x20009 0x2000a 0x00 0x00>;
> qcom,board-id = <31 0>;
>
> - clocks {
> - divclk2_haptics: divclk2 {
> - compatible = "fixed-clock";
> - #clock-cells = <0>;
> - clock-frequency = <32768>;
> - clock-output-names = "divclk2";
> + divclk2_haptics: divclk2 {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <32768>;
> + clock-output-names = "divclk2";
>
> - pinctrl-names = "default";
> - pinctrl-0 = <&divclk2_pin_a>;
> - };
> + pinctrl-names = "default";
> + pinctrl-0 = <&divclk2_pin_a>;
> };
> };
>
> --
> 2.34.1
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate
2023-09-01 8:18 [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate Krzysztof Kozlowski
2023-09-01 8:18 ` [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: " Krzysztof Kozlowski
@ 2023-09-05 21:51 ` Dmitry Baryshkov
2023-09-20 17:14 ` Bjorn Andersson
2 siblings, 0 replies; 6+ messages in thread
From: Dmitry Baryshkov @ 2023-09-05 21:51 UTC (permalink / raw)
To: Krzysztof Kozlowski, Andy Gross, Bjorn Andersson, Konrad Dybcio,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, linux-arm-msm,
devicetree, linux-kernel
Cc: stable
On 01/09/2023 11:18, Krzysztof Kozlowski wrote:
> Commit 704e26678c8d ("arm64: dts: qcom: apq8096-db820c: drop simple-bus
> from clocks") removed "simple-bus" compatible from "clocks" node, but
> one of the clocks - divclk1 - is a gpio-gate-clock, which does not have
> CLK_OF_DECLARE. This means it will not be instantiated if placed in
> some subnode. Move the clocks to the root node, so regular devices will
> be populated.
>
> Reported-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> Closes: https://lore.kernel.org/all/CAA8EJprF==p87oN+RiwAiNeURF1JcHGfL2Ez5zxqYPRRbN-hhg@mail.gmail.com/
> Cc: <stable@vger.kernel.org>
> Fixes: 704e26678c8d ("arm64: dts: qcom: apq8096-db820c: drop simple-bus from clocks")
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Stephen Boyd pointed out that this is a proper way to go (and we should
unpack remaining /clocks nodes).
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> arch/arm64/boot/dts/qcom/apq8096-db820c.dts | 32 ++++++++++-----------
> 1 file changed, 15 insertions(+), 17 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
> index 385b178314db..3067a4091a7a 100644
> --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
> +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
> @@ -62,25 +62,23 @@ chosen {
> stdout-path = "serial0:115200n8";
> };
>
> - clocks {
> - divclk4: divclk4 {
> - compatible = "fixed-clock";
> - #clock-cells = <0>;
> - clock-frequency = <32768>;
> - clock-output-names = "divclk4";
> + div1_mclk: divclk1 {
> + compatible = "gpio-gate-clock";
> + pinctrl-0 = <&audio_mclk>;
> + pinctrl-names = "default";
> + clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
> + #clock-cells = <0>;
> + enable-gpios = <&pm8994_gpios 15 0>;
> + };
>
> - pinctrl-names = "default";
> - pinctrl-0 = <&divclk4_pin_a>;
> - };
> + divclk4: divclk4 {
> + compatible = "fixed-clock";
> + #clock-cells = <0>;
> + clock-frequency = <32768>;
> + clock-output-names = "divclk4";
>
> - div1_mclk: divclk1 {
> - compatible = "gpio-gate-clock";
> - pinctrl-0 = <&audio_mclk>;
> - pinctrl-names = "default";
> - clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
> - #clock-cells = <0>;
> - enable-gpios = <&pm8994_gpios 15 0>;
> - };
> + pinctrl-names = "default";
> + pinctrl-0 = <&divclk4_pin_a>;
> };
>
> gpio-keys {
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: fix missing clock populate
2023-09-01 8:18 ` [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: " Krzysztof Kozlowski
2023-09-01 16:36 ` Dmitry Baryshkov
@ 2023-09-05 21:52 ` Dmitry Baryshkov
1 sibling, 0 replies; 6+ messages in thread
From: Dmitry Baryshkov @ 2023-09-05 21:52 UTC (permalink / raw)
To: Krzysztof Kozlowski, Andy Gross, Bjorn Andersson, Konrad Dybcio,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, linux-arm-msm,
devicetree, linux-kernel
Cc: stable
On 01/09/2023 11:18, Krzysztof Kozlowski wrote:
> Commit 338958e30c68 ("arm64: dts: qcom: msm8996-xiaomi: drop simple-bus
> from clocks") removed "simple-bus" compatible from "clocks" node, but
> one of the clocks - divclk1 - is a gpio-gate-clock, which does not have
> CLK_OF_DECLARE. This means it will not be instantiated if placed in
> some subnode. Move the clocks to the root node, so regular devices will
> be populated.
>
> Reported-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> Closes: https://lore.kernel.org/all/CAA8EJprF==p87oN+RiwAiNeURF1JcHGfL2Ez5zxqYPRRbN-hhg@mail.gmail.com/
> Cc: <stable@vger.kernel.org>
> Fixes: 338958e30c68 ("arm64: dts: qcom: msm8996-xiaomi: drop simple-bus from clocks")
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
> .../boot/dts/qcom/msm8996-xiaomi-common.dtsi | 32 +++++++++----------
> .../boot/dts/qcom/msm8996-xiaomi-gemini.dts | 16 ++++------
> 2 files changed, 22 insertions(+), 26 deletions(-)
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate
2023-09-01 8:18 [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate Krzysztof Kozlowski
2023-09-01 8:18 ` [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: " Krzysztof Kozlowski
2023-09-05 21:51 ` [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: " Dmitry Baryshkov
@ 2023-09-20 17:14 ` Bjorn Andersson
2 siblings, 0 replies; 6+ messages in thread
From: Bjorn Andersson @ 2023-09-20 17:14 UTC (permalink / raw)
To: Andy Gross, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, linux-arm-msm, devicetree, linux-kernel,
Krzysztof Kozlowski
Cc: Dmitry Baryshkov, stable
On Fri, 01 Sep 2023 10:18:11 +0200, Krzysztof Kozlowski wrote:
> Commit 704e26678c8d ("arm64: dts: qcom: apq8096-db820c: drop simple-bus
> from clocks") removed "simple-bus" compatible from "clocks" node, but
> one of the clocks - divclk1 - is a gpio-gate-clock, which does not have
> CLK_OF_DECLARE. This means it will not be instantiated if placed in
> some subnode. Move the clocks to the root node, so regular devices will
> be populated.
>
> [...]
Applied, thanks!
[1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate
commit: 2ca3e844e3f978c0dbc95072dbf379abfc4a27db
[2/2] arm64: dts: qcom: msm8996-xiaomi: fix missing clock populate
commit: 725f593692ceedeab639b661298955b6f9ba8ec3
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-09-20 17:10 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-01 8:18 [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: fix missing clock populate Krzysztof Kozlowski
2023-09-01 8:18 ` [RFT PATCH 2/2] arm64: dts: qcom: msm8996-xiaomi: " Krzysztof Kozlowski
2023-09-01 16:36 ` Dmitry Baryshkov
2023-09-05 21:52 ` Dmitry Baryshkov
2023-09-05 21:51 ` [RFT PATCH 1/2] arm64: dts: qcom: apq8096-db820c: " Dmitry Baryshkov
2023-09-20 17:14 ` 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).