2019-10-08 17:02:32

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH] ARM: dts: s3c64xx: Fix init order of clock providers

From: Lihua Yao <[email protected]>

fin_pll is the parent of clock-controller@7e00f000, specify
the dependency to ensure proper initialization order of clock
providers.

without this patch:
[ 0.000000] S3C6410 clocks: apll = 0, mpll = 0
[ 0.000000] epll = 0, arm_clk = 0

with this patch:
[ 0.000000] S3C6410 clocks: apll = 532000000, mpll = 532000000
[ 0.000000] epll = 24000000, arm_clk = 532000000

Fixes: 3f6d439f2022 ("clk: reverse default clk provider initialization order in of_clk_init()")
Signed-off-by: Lihua Yao <[email protected]>
Signed-off-by: Krzysztof Kozlowski <[email protected]>

---

Sending in author's name because outlook bounces from the lists.
---
arch/arm/boot/dts/s3c6410-mini6410.dts | 4 ++++
arch/arm/boot/dts/s3c6410-smdk6410.dts | 4 ++++
2 files changed, 8 insertions(+)

diff --git a/arch/arm/boot/dts/s3c6410-mini6410.dts b/arch/arm/boot/dts/s3c6410-mini6410.dts
index 0e159c884f97..1aeac33b0d34 100644
--- a/arch/arm/boot/dts/s3c6410-mini6410.dts
+++ b/arch/arm/boot/dts/s3c6410-mini6410.dts
@@ -165,6 +165,10 @@
};
};

+&clocks {
+ clocks = <&fin_pll>;
+};
+
&sdhci0 {
pinctrl-names = "default";
pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
diff --git a/arch/arm/boot/dts/s3c6410-smdk6410.dts b/arch/arm/boot/dts/s3c6410-smdk6410.dts
index a9a5689dc462..3bf6c450a26e 100644
--- a/arch/arm/boot/dts/s3c6410-smdk6410.dts
+++ b/arch/arm/boot/dts/s3c6410-smdk6410.dts
@@ -69,6 +69,10 @@
};
};

+&clocks {
+ clocks = <&fin_pll>;
+};
+
&sdhci0 {
pinctrl-names = "default";
pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
--
2.17.1


2019-10-08 17:20:15

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: s3c64xx: Fix init order of clock providers

On Tue, Oct 08, 2019 at 06:59:17PM +0200, Krzysztof Kozlowski wrote:
> From: Lihua Yao <[email protected]>
>
> fin_pll is the parent of clock-controller@7e00f000, specify
> the dependency to ensure proper initialization order of clock
> providers.
>
> without this patch:
> [ 0.000000] S3C6410 clocks: apll = 0, mpll = 0
> [ 0.000000] epll = 0, arm_clk = 0
>
> with this patch:
> [ 0.000000] S3C6410 clocks: apll = 532000000, mpll = 532000000
> [ 0.000000] epll = 24000000, arm_clk = 532000000
>
> Fixes: 3f6d439f2022 ("clk: reverse default clk provider initialization order in of_clk_init()")
> Signed-off-by: Lihua Yao <[email protected]>

Thanks, applied.

Best regards,
Krzysztof

2019-10-08 17:33:35

by Sylwester Nawrocki

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: s3c64xx: Fix init order of clock providers

On 10/8/19 18:59, Krzysztof Kozlowski wrote:
> From: Lihua Yao <[email protected]>
>
> fin_pll is the parent of clock-controller@7e00f000, specify
> the dependency to ensure proper initialization order of clock
> providers.

> Fixes: 3f6d439f2022 ("clk: reverse default clk provider initialization order in of_clk_init()")

The patch looks good but I'm not sure above tag points to the right commit.
That commit is just a regression fix for
1771b10d605d26cc "clk: respect the clock dependencies in of_clk_init"

How about picking some commit touching the dts files itself, e.g.
a43736deb47d21bd "ARM: dts: Add dts file for S3C6410-based Mini6410 board" ?

> Signed-off-by: Lihua Yao <[email protected]>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>

Reviewed-by: Sylwester Nawrocki <[email protected]>

--
Regards,
Sylwester

2019-10-08 17:56:48

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: s3c64xx: Fix init order of clock providers

On Tue, Oct 08, 2019 at 07:30:50PM +0200, Sylwester Nawrocki wrote:
> On 10/8/19 18:59, Krzysztof Kozlowski wrote:
> > From: Lihua Yao <[email protected]>
> >
> > fin_pll is the parent of clock-controller@7e00f000, specify
> > the dependency to ensure proper initialization order of clock
> > providers.
>
> > Fixes: 3f6d439f2022 ("clk: reverse default clk provider initialization order in of_clk_init()")
>
> The patch looks good but I'm not sure above tag points to the right commit.
> That commit is just a regression fix for
> 1771b10d605d26cc "clk: respect the clock dependencies in of_clk_init"
>
> How about picking some commit touching the dts files itself, e.g.
> a43736deb47d21bd "ARM: dts: Add dts file for S3C6410-based Mini6410 board" ?

As I understood, the mentioned commit "reverse default clk provider"
caused issue to appear, because of reversed order (first version of this
patch played with the order). Even though that commit was not strictly
the cause, but should come proably with proper DTS change. Therefore
the fixes points to right moment of backports.

The DTS commit, at that time, was correct with bindings and with driver.

>
> > Signed-off-by: Lihua Yao <[email protected]>
> > Signed-off-by: Krzysztof Kozlowski <[email protected]>
>
> Reviewed-by: Sylwester Nawrocki <[email protected]>

Thanks!

Best regards,
Krzysztof