From: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Chen-Yu Tsai <wens-jdAy2FN1RRM@public.gmane.org>
Cc: Maxime Ripard
<maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org>,
Alexandre Belloni
<alexandre.belloni-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org>,
Alessandro Zummo
<a.zummo-BfzFCNDTiLLj+vYz1yj4TQ@public.gmane.org>,
Michael Turquette
<mturquette-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>,
Stephen Boyd <sboyd-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-rtc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-clk-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
Subject: Re: [PATCH 00/15] rtc: sun6i: clock rework and pre-H6 SoC support
Date: Wed, 28 Nov 2018 19:45:28 +0100 [thread overview]
Message-ID: <20181128184528.GA22504@Red> (raw)
In-Reply-To: <20181128093013.24442-1-wens-jdAy2FN1RRM@public.gmane.org>
On Wed, Nov 28, 2018 at 05:29:57PM +0800, Chen-Yu Tsai wrote:
> Hi everyone,
>
> This series was started as part of enabling Bluetooth on various
> Allwinner SBCs. The bluetooth controller requires a precise 32.768 kHz
> clock fed to it to correctly detect the frequency of its main oscillator.
> This clock signal is provided by the RTC, either directly from a special
> pin on the SoC, or some clock output function from the clock controllers.
> I found that the clock-related properties of the RTC on later SoCs were
> incorrect or missing.
>
> This series reworks the compatible strings and clock parts of the device
> tree bindings for sun6i-rtc. Currently we assume most Allwinner SoCs use
> the same sun6i-rtc variant, when in fact they do not. The differences
> that matter with regards to clocks are a) the A31 does not have an extra
> external output for the RTC 32K clock, while most of the others do;
> b) the clock frequency of the internal RC oscillator is different on
> some SoCs; c) on the H6 the RTC also handles the 24 MHz DCXO, which
> feeds the system HOSC. The last difference, and by extension the H6, are
> not covered in this series.
>
> Patch 1 cleans up the clock-related section of the RTC device tree
> binding. This would make it easier to read and easier to add additional
> clocks.
>
> Patch 2 adds compatible strings for all identified variants introduced
> prior to the H6.
>
> Patch 3 deprecates the external clock output for the A31. The A31 does
> not have this output, so it's introduction and usage was an error.
>
> Patch 4 adds a clock output for the RTC's internal oscillator to the
> device tree binding. This feeds the PRCM in some SoCs.
>
> Patch 5 adds a default clock name for the LOSC to the RTC driver.
>
> Patch 6 adds support for different hardware variants to the RTC driver.
>
> Patch 7 adds support for all known pre-H6 variants.
>
> Patch 8 exposes the RTC's internal oscillator through the device tree.
>
> Patch 9 makes the R40's CCU use the LOSC from the RTC module, instead of
> its own internal oscillator.
>
> Patch 10 through 15 adds an RTC node or fixes up the RTC device node
> address ranges, clock properties, names of existing clocks, and adds
> accuracy properties for the external fixed oscillators.
>
> The clock names require fixing because the sunxi clock driver implicitly
> depends on the HOSC and LOSC being named "osc24M" and "osc32k". The
> "fixes" to the clock hierarchy introduced in this series means the names
> must also be shuffled around or the in kernel representation would be
> incorrect. This has been the case since the sunxi-ng drivers were
> introduced. There are plans to address this, but the code is still in its
> early stages.
>
> Please have a look.
>
> Thanks
> ChenYu
>
> Chen-Yu Tsai (15):
> dt-bindings: rtc: sun6i-rtc: Rewrite clock outputs as a list
> dt-bindings: rtc: sun6i-rtc: Add compatible strings for pre-H6
> variants
> dt-bindings: rtc: sun6i-rtc: Deprecate external clock output for A31
> dt-bindings: rtc: sun6i-rtc: Export internal RC oscillator
> rtc: sun6i: Add default clock name for LOSC
> rtc: sun6i: Add support for different variants
> rtc: sun6i: Add support for all known pre-H6 variants
> rtc: sun6i: Expose internal oscillator through device tree
> clk: sunxi-ng: r40: Force LOSC parent to RTC LOSC output
> ARM: dts: sun8i: a23/a33: Fix up RTC device node
> ARM: dts: sunxi: h3/h5: Add clock accuracy for external oscillators
> ARM: dts: sunxi: h3/h5: Fix up RTC device node and clock references
> ARM: dts: sun8i: r40: Add clock accuracy for external oscillators
> ARM: dts: sun8i: r40: Add RTC device node
> arm64: dts: allwinner: a64: Fix up RTC device node and clock
> references
>
> .../devicetree/bindings/rtc/sun6i-rtc.txt | 31 ++++-
> arch/arm/boot/dts/sun8i-a23-a33.dtsi | 6 +-
> arch/arm/boot/dts/sun8i-h3.dtsi | 4 +
> arch/arm/boot/dts/sun8i-r40.dtsi | 18 ++-
> arch/arm/boot/dts/sunxi-h3-h5.dtsi | 28 ++---
> arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 22 ++--
> arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 4 +
> drivers/clk/sunxi-ng/ccu-sun8i-r40.c | 11 ++
> drivers/rtc/rtc-sun6i.c | 117 ++++++++++++++++--
> 9 files changed, 188 insertions(+), 53 deletions(-)
>
> --
Hello
Tested-by: Corentin Labbe <clabbe.montjoie-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Tested-on: sun8i-r40-bananapi-m2-ultra
Tested-on: sun50i-h5-nanopi-neo-plus2
Regards
prev parent reply other threads:[~2018-11-28 18:45 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-28 9:29 [PATCH 00/15] rtc: sun6i: clock rework and pre-H6 SoC support Chen-Yu Tsai
2018-11-28 9:29 ` [PATCH 01/15] dt-bindings: rtc: sun6i-rtc: Rewrite clock outputs as a list Chen-Yu Tsai
[not found] ` <20181128093013.24442-2-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:17 ` Maxime Ripard
[not found] ` <20181128093013.24442-1-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 9:29 ` [PATCH 02/15] dt-bindings: rtc: sun6i-rtc: Add compatible strings for pre-H6 variants Chen-Yu Tsai
[not found] ` <20181128093013.24442-3-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:19 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 03/15] dt-bindings: rtc: sun6i-rtc: Deprecate external clock output for A31 Chen-Yu Tsai
[not found] ` <20181128093013.24442-4-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:20 ` Maxime Ripard
2018-11-28 11:15 ` Chen-Yu Tsai
2018-11-28 9:30 ` [PATCH 04/15] dt-bindings: rtc: sun6i-rtc: Export internal RC oscillator Chen-Yu Tsai
2018-11-28 10:32 ` Maxime Ripard
2018-11-28 11:18 ` Chen-Yu Tsai
[not found] ` <CAGb2v67jPi-RFFkVrzHeh2XHeZV7ZN0tPCE=cOTpd6RQayH_Kg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-12-03 9:06 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 05/15] rtc: sun6i: Add default clock name for LOSC Chen-Yu Tsai
[not found] ` <20181128093013.24442-6-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:21 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 06/15] rtc: sun6i: Add support for different variants Chen-Yu Tsai
[not found] ` <20181128093013.24442-7-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:22 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 07/15] rtc: sun6i: Add support for all known pre-H6 variants Chen-Yu Tsai
[not found] ` <20181128093013.24442-8-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:24 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 07/15] rtc: sun6i: Add support for all known variants Chen-Yu Tsai
[not found] ` <20181128093013.24442-9-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 9:44 ` Chen-Yu Tsai
2018-11-28 9:30 ` [PATCH 08/15] rtc: sun6i: Expose internal oscillator through device tree Chen-Yu Tsai
[not found] ` <20181128093013.24442-10-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:33 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 09/15] clk: sunxi-ng: r40: Force LOSC parent to RTC LOSC output Chen-Yu Tsai
[not found] ` <20181128093013.24442-11-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:25 ` Maxime Ripard
2018-11-28 21:29 ` Stephen Boyd
[not found] ` <154344054442.88331.8887745218976145062-n1Xw8LXHxjTHt/MElyovVYaSKrA+ACpX0E9HWUfgJXw@public.gmane.org>
2018-11-30 3:55 ` Chen-Yu Tsai
2018-11-28 9:30 ` [PATCH 10/15] ARM: dts: sun8i: a23/a33: Fix up RTC device node Chen-Yu Tsai
[not found] ` <20181128093013.24442-12-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:26 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 11/15] ARM: dts: sunxi: h3/h5: Add clock accuracy for external oscillators Chen-Yu Tsai
[not found] ` <20181128093013.24442-13-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:26 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 12/15] ARM: dts: sunxi: h3/h5: Fix up RTC device node and clock references Chen-Yu Tsai
[not found] ` <20181128093013.24442-14-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:27 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 13/15] ARM: dts: sun8i: r40: Add clock accuracy for external oscillators Chen-Yu Tsai
2018-11-28 10:28 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 14/15] ARM: dts: sun8i: r40: Add RTC device node Chen-Yu Tsai
[not found] ` <20181128093013.24442-16-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:28 ` Maxime Ripard
2018-11-28 9:30 ` [PATCH 15/15] arm64: dts: allwinner: a64: Fix up RTC device node and clock references Chen-Yu Tsai
[not found] ` <20181128093013.24442-17-wens-jdAy2FN1RRM@public.gmane.org>
2018-11-28 10:28 ` Maxime Ripard
2018-11-28 18:45 ` Corentin Labbe [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181128184528.GA22504@Red \
--to=clabbe.montjoie-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=a.zummo-BfzFCNDTiLLj+vYz1yj4TQ@public.gmane.org \
--cc=alexandre.belloni-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-clk-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-rtc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org \
--cc=mturquette-rdvid1DuHRBWk0Htik3J/w@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=sboyd-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=wens-jdAy2FN1RRM@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).