[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260121-a733-rtc-v1-0-d359437f23a7@pigmoral.tech>
Date: Wed, 21 Jan 2026 18:59:06 +0800
From: Junhui Liu <junhui.liu@...moral.tech>
To: Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>, Chen-Yu Tsai <wens@...nel.org>,
Jernej Skrabec <jernej.skrabec@...il.com>,
Samuel Holland <samuel@...lland.org>,
Alexandre Belloni <alexandre.belloni@...tlin.com>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Maxime Ripard <mripard@...nel.org>
Cc: linux-clk@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-sunxi@...ts.linux.dev, linux-kernel@...r.kernel.org,
linux-rtc@...r.kernel.org, devicetree@...r.kernel.org,
Junhui Liu <junhui.liu@...moral.tech>
Subject: [PATCH 0/7] rtc: sun6i: Add support for Allwinner A733 SoC
Add support for the Allwinner A733 RTC and its internal Clock Control
Unit (CCU). Reuse the rtc-sun6i rtc driver while introducing a new
SoC-specific RTC CCU driver to handle the hardware's evolved clock
structure.
To facilitate this addition and improve driver modularity, transition
the binding between the RTC and its internal CCU from direct
cross-subsystem function calls to the auxiliary bus. Also extract shared
IOSC and 32kHz clock logic into a standalone ccu_rtc module for reuse
across newer SoC generations.
The A733 implementation supports hardware detection of three external
crystal frequencies (19.2MHz, 24MHz and 26MHz), which is represented in
the driver via read-only mux operations. Implement logic to derive a
normalized 32kHz reference from these DCXO sources using fixed
pre-dividers. Additionally, provide several new DCXO gate clocks for
peripherals, including SerDes, HDMI, and UFS.
---
Junhui Liu (7):
dt-bindings: rtc: sun6i: Add Allwinner A733 support
rtc: sun6i: Bind internal CCU via auxiliary bus
clk: sunxi-ng: sun6i-rtc: Add feature bit for IOSC calibration
clk: sunxi-ng: Extract common RTC CCU clock logic
clk: sunxi-ng: mux: Add mux read-only clock operations
rtc: sun6i: Add support for A733 RTC
clk: sunxi-ng: Add Allwinner A733 RTC CCU support
.../bindings/rtc/allwinner,sun6i-a31-rtc.yaml | 38 +++-
drivers/clk/sunxi-ng/Kconfig | 5 +
drivers/clk/sunxi-ng/Makefile | 5 +
drivers/clk/sunxi-ng/ccu-sun60i-a733-rtc.c | 204 +++++++++++++++++++++
drivers/clk/sunxi-ng/ccu-sun60i-a733-rtc.h | 18 ++
drivers/clk/sunxi-ng/ccu-sun6i-rtc.c | 184 +++----------------
drivers/clk/sunxi-ng/ccu_common.h | 1 +
drivers/clk/sunxi-ng/ccu_mux.c | 11 ++
drivers/clk/sunxi-ng/ccu_mux.h | 1 +
drivers/clk/sunxi-ng/ccu_rtc.c | 136 ++++++++++++++
drivers/clk/sunxi-ng/ccu_rtc.h | 44 +++++
drivers/rtc/rtc-sun6i.c | 38 +++-
include/dt-bindings/clock/sun60i-a733-rtc.h | 16 ++
include/linux/clk/sunxi-ng.h | 2 -
14 files changed, 533 insertions(+), 170 deletions(-)
---
base-commit: 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7
change-id: 20251226-a733-rtc-c5167df14e6e
Best regards,
--
Junhui Liu <junhui.liu@...moral.tech>
Powered by blists - more mailing lists