[PATCH v7 0/4] clk: sun6i-rtc: Add support for Allwinner A733 SoC
Jerome Brunet <[email protected]> Thu, 23 Jul 2026 11:39:50 +0200
| Newsgroups | org.kernel.vger.linux-rtc,dev.linux.lists.linux-sunxi,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
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. 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 divider 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. This was tested on a Raxda Cubie A7A. Changes in v7: - Droped left over unneeded change to ccu_mux_helper_unapply_prediv() - Link to v6: https://patch.msgid.link/[email protected] Changes in v6: - Add .set_parent callback to the divider RO ops - Link to v5: https://patch.msgid.link/[email protected] Changes in v5: - Droped already applied changes - Fix determine rate mux helper calculation - Changed clock split commit description - Added a macro for the clock number without gates - Link to v4: https://patch.msgid.link/[email protected] Changes in v4: - Remove unneeded export of mux prediv helpers - Link to v3: https://patch.msgid.link/[email protected] Changes in v3: - Disallow clock-output-names DT property for h616/r329 chips - Fix ccu probe helper to properly unregister clocks on error - Implement .determine_rate for ccu divider RO ops - Drop unused DCXO_CTRL_REG_EN define - Link to v2: https://patch.msgid.link/[email protected] Changes in v2: * Changed DT bindings as suggested. Those have changed significantly since v1 so I did not pick up Rob's review trailer * Support added in the existing RTC CCU driver rather than a separate driver * Added DT parsing clean up of the existing driver * Xtal detection exposed by RO divider rather than a MUX. * Dropped conversion to aux device for now. This is not strictly related the a733 support and will submitted again later on. * Link to v1: https://lore.kernel.org/r/[email protected] --- Jerome Brunet (4): clk: sunxi-ng: mux: fix determine helper rate propagation clk: sunxi-ng: div: add read-only operation support clk: sunxi-ng: sun6i-rtc: split main oscillator div and gate clk: sunxi-ng: sun6i-rtc: add a733 support drivers/clk/sunxi-ng/ccu-sun6i-rtc.c | 89 ++++++++++++++++++++++++++++++++---- drivers/clk/sunxi-ng/ccu-sun6i-rtc.h | 3 +- drivers/clk/sunxi-ng/ccu_div.c | 31 ++++++++++++- drivers/clk/sunxi-ng/ccu_div.h | 1 + drivers/clk/sunxi-ng/ccu_mux.c | 57 ++++++++++++----------- 5 files changed, 141 insertions(+), 40 deletions(-) --- base-commit: c52b5090bf1e3b88745f8a81f264f34100ecde42 change-id: 20251226-a733-rtc-c5167df14e6e Best regards, -- Jerome