[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210901053951.60952-1-samuel@sholland.org>
Date: Wed, 1 Sep 2021 00:39:44 -0500
From: Samuel Holland <samuel@...lland.org>
To: Maxime Ripard <mripard@...nel.org>, Chen-Yu Tsai <wens@...e.org>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Rob Herring <robh+dt@...nel.org>
Cc: Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>, devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-clk@...r.kernel.org,
linux-sunxi@...ts.linux.dev, linux-kernel@...r.kernel.org,
Samuel Holland <samuel@...lland.org>
Subject: [RFC PATCH 0/7] clk: sunxi-ng: Add a RTC CCU driver
This patch series adds a CCU driver for the RTC in the H616 and R329.
The extra patches at the end of this series show how it would be
explanded to additional hardware variants.
The driver is intended to support the existing binding used for the H6,
but also an updated binding which includes all RTC input clocks. I do
not know how to best represent that binding -- that is a major reason
why this series is an RFC.
A future patch series could add functionality to the driver to manage
IOSC calibration at boot and during suspend/resume.
It may be possible to support all of these hardware variants in the
existing RTC clock driver and avoid some duplicate code, but I'm
concerned about the complexity there, without any of the CCU
abstraction.
This series is currently based on top of the other series I just sent
(clk: sunxi-ng: Lifetime fixes and module support), but I can rebase it
elsewhere.
Samuel Holland (7):
dt-bindings: rtc: sun6i: Add H616 and R329 compatibles
clk: sunxi-ng: div: Add macro using CLK_HW_INIT_FW_NAME
clk: sunxi-ng: mux: Add macro using CLK_HW_INIT_PARENTS_DATA
clk: sunxi-ng: mux: Allow muxes to have keys
clk: sunxi-ng: Add support for the sun50i RTC clocks
[DO NOT MERGE] clk: sunxi-ng: Add support for H6
[DO NOT MERGE] clk: sunxi-ng: Add support for T5
.../bindings/rtc/allwinner,sun6i-a31-rtc.yaml | 55 ++-
drivers/clk/sunxi-ng/Kconfig | 6 +
drivers/clk/sunxi-ng/Makefile | 1 +
drivers/clk/sunxi-ng/ccu_common.h | 1 +
drivers/clk/sunxi-ng/ccu_div.h | 14 +
drivers/clk/sunxi-ng/ccu_mux.c | 7 +
drivers/clk/sunxi-ng/ccu_mux.h | 28 ++
drivers/clk/sunxi-ng/sun50i-rtc-ccu.c | 433 ++++++++++++++++++
drivers/clk/sunxi-ng/sun50i-rtc-ccu.h | 15 +
drivers/rtc/rtc-sun6i.c | 17 -
include/dt-bindings/clock/sun50i-rtc.h | 12 +
11 files changed, 566 insertions(+), 23 deletions(-)
create mode 100644 drivers/clk/sunxi-ng/sun50i-rtc-ccu.c
create mode 100644 drivers/clk/sunxi-ng/sun50i-rtc-ccu.h
create mode 100644 include/dt-bindings/clock/sun50i-rtc.h
--
2.31.1
Powered by blists - more mailing lists