diff mbox series

[11/25] ARM: dts: s5pv210: add RTC 32 KHz clock in Aries family

Message ID 20200907161141.31034-12-krzk@kernel.org (mailing list archive)
State Accepted
Headers show
Series ARM: dts: s5pv210: Cleanup - dtschema warnings | expand

Commit Message

Krzysztof Kozlowski Sept. 7, 2020, 4:11 p.m. UTC
The S3C RTC requires 32768 Hz clock as input which is provided by PMIC.
However there is no such clock provider but rather a regulator driver
which registers the clock as a regulator.  This is an old driver which
will not be updated so add a workaround - a fixed-clock to fill missing
clock phandle reference in S3C RTC.

This fixes dtbs_check warnings:

  rtc@e2800000: clocks: [[2, 145]] is too short
  rtc@e2800000: clock-names: ['rtc'] is too short

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 arch/arm/boot/dts/s5pv210-aries.dtsi | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Jonathan Bakker Sept. 7, 2020, 11:57 p.m. UTC | #1
Hi Krzysztof,

On 2020-09-07 9:11 a.m., Krzysztof Kozlowski wrote:
> The S3C RTC requires 32768 Hz clock as input which is provided by PMIC.
> However there is no such clock provider but rather a regulator driver
> which registers the clock as a regulator.  This is an old driver which
> will not be updated so add a workaround - a fixed-clock to fill missing
> clock phandle reference in S3C RTC.
> 
> This fixes dtbs_check warnings:
> 
>   rtc@e2800000: clocks: [[2, 145]] is too short
>   rtc@e2800000: clock-names: ['rtc'] is too short
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
>  arch/arm/boot/dts/s5pv210-aries.dtsi | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/s5pv210-aries.dtsi b/arch/arm/boot/dts/s5pv210-aries.dtsi
> index 6ba23562da46..86c3b26fd21e 100644
> --- a/arch/arm/boot/dts/s5pv210-aries.dtsi
> +++ b/arch/arm/boot/dts/s5pv210-aries.dtsi
> @@ -47,6 +47,13 @@
>  		};
>  	};
>  
> +	pmic_ap_clk: clock-0 {
> +		/* Workaround for missing clock on PMIC */
> +		compatible = "fixed-clock";
> +		#clock-cells = <0>;
> +		clock-frequency = <32768>;
> +	};
> +
>  	bt_codec: bt_sco {
>  		compatible = "linux,bt-sco";
>  		#sound-dai-cells = <0>;
> @@ -825,6 +832,11 @@
>  	samsung,pwm-outputs = <1>;
>  };
>  
> +&rtc {
> +	clocks = <&clocks CLK_RTC>, <&pmic_ap_clk>;
> +	clock-names = "rtc", "rtc_src";

Missing a

status = "okay";

here, but with that it works fine for me.  Looks like it's also
missing in the patches for the other devices as well.

Thanks for the series of cleanups,
Jonathan

> +};
> +
>  &sdhci1 {
>  	#address-cells = <1>;
>  	#size-cells = <0>;
>
Krzysztof Kozlowski Sept. 8, 2020, 6:54 a.m. UTC | #2
On Mon, Sep 07, 2020 at 04:57:53PM -0700, Jonathan Bakker wrote:
> Hi Krzysztof,
> 
> On 2020-09-07 9:11 a.m., Krzysztof Kozlowski wrote:
> > The S3C RTC requires 32768 Hz clock as input which is provided by PMIC.
> > However there is no such clock provider but rather a regulator driver
> > which registers the clock as a regulator.  This is an old driver which
> > will not be updated so add a workaround - a fixed-clock to fill missing
> > clock phandle reference in S3C RTC.
> > 
> > This fixes dtbs_check warnings:
> > 
> >   rtc@e2800000: clocks: [[2, 145]] is too short
> >   rtc@e2800000: clock-names: ['rtc'] is too short
> > 
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > ---
> >  arch/arm/boot/dts/s5pv210-aries.dtsi | 12 ++++++++++++
> >  1 file changed, 12 insertions(+)
> > 
> > diff --git a/arch/arm/boot/dts/s5pv210-aries.dtsi b/arch/arm/boot/dts/s5pv210-aries.dtsi
> > index 6ba23562da46..86c3b26fd21e 100644
> > --- a/arch/arm/boot/dts/s5pv210-aries.dtsi
> > +++ b/arch/arm/boot/dts/s5pv210-aries.dtsi
> > @@ -47,6 +47,13 @@
> >  		};
> >  	};
> >  
> > +	pmic_ap_clk: clock-0 {
> > +		/* Workaround for missing clock on PMIC */
> > +		compatible = "fixed-clock";
> > +		#clock-cells = <0>;
> > +		clock-frequency = <32768>;
> > +	};
> > +
> >  	bt_codec: bt_sco {
> >  		compatible = "linux,bt-sco";
> >  		#sound-dai-cells = <0>;
> > @@ -825,6 +832,11 @@
> >  	samsung,pwm-outputs = <1>;
> >  };
> >  
> > +&rtc {
> > +	clocks = <&clocks CLK_RTC>, <&pmic_ap_clk>;
> > +	clock-names = "rtc", "rtc_src";
> 
> Missing a
> 
> status = "okay";
> 
> here, but with that it works fine for me.  Looks like it's also
> missing in the patches for the other devices as well.

It wasn't there on purpose - I did not want to enable the RTC, just fix
the DTS with the dtschema. However a separate patch could be to actually
enable it.

I'll add your tested-by to this patch.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/s5pv210-aries.dtsi b/arch/arm/boot/dts/s5pv210-aries.dtsi
index 6ba23562da46..86c3b26fd21e 100644
--- a/arch/arm/boot/dts/s5pv210-aries.dtsi
+++ b/arch/arm/boot/dts/s5pv210-aries.dtsi
@@ -47,6 +47,13 @@ 
 		};
 	};
 
+	pmic_ap_clk: clock-0 {
+		/* Workaround for missing clock on PMIC */
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <32768>;
+	};
+
 	bt_codec: bt_sco {
 		compatible = "linux,bt-sco";
 		#sound-dai-cells = <0>;
@@ -825,6 +832,11 @@ 
 	samsung,pwm-outputs = <1>;
 };
 
+&rtc {
+	clocks = <&clocks CLK_RTC>, <&pmic_ap_clk>;
+	clock-names = "rtc", "rtc_src";
+};
+
 &sdhci1 {
 	#address-cells = <1>;
 	#size-cells = <0>;