[PATCH RFC 0/3] clk: support arbitrary clk_register() sequence
Yang Xiwen
forbidden405 at outlook.com
Fri Aug 22 14:39:41 CEST 2025
On 7/2/2025 10:47 PM, Yang Xiwen wrote:
> On 6/21/2025 6:54 PM, Yang Xiwen via B4 Relay wrote:
>> Currently U-Boot clk framework mandates the sequence of registering clks
>> to begin from root, and then its children. This is an addtional
>> requirement that doesn't exist in Linux kernel, which makes clk driver
>> porting more difficult.
>>
>> Let's handle this entirely in clk framework and give driver the freedom
>> to register clocks in any order.
>>
>> This is done by assigning the parent "lazily". It will cache the parent
>> name in the core clk struct and try to refresh it when clk consumers
>> call clk_get_parent(). It's transparent to clk consumers as long as they
>> only use APIs provided by clk framework.
>>
>> I've ran `ut dm clk*` and verified these commits does not break any
>> existing testcases. Though no new testcase is added because I think
>> existing testcases already test the logic very well.
>>
>> Signed-off-by: Yang Xiwen <forbidden405 at outlook.com>
>> ---
>> Yang Xiwen (3):
>> drivers: core: device: set new parent when old parent is NULL
>> clk: allow assigning parent lazily
>> clk: sandbox: reverse the order to register clk i2c_root and i2c
>>
>> drivers/clk/clk-uclass.c | 47
>> +++++++++++++++++++++++++++++++------------
>> drivers/clk/clk.c | 14 +++++++++++--
>> drivers/clk/clk_sandbox_ccf.c | 6 +++---
>> drivers/core/device.c | 5 +++++
>> include/clk.h | 2 ++
>> 5 files changed, 56 insertions(+), 18 deletions(-)
>> ---
>> base-commit: 721eecd9cbf2cc59c5230abd37d02d4a02f75cc7
>> change-id: 20250621-clk-reparent-89d75f6a8e09
>>
>> Best regards,
>
> Ping for review. This will be used by upcoming Amlogic meson8b clk
> driver and is tested.
>
It's been 2 months already. Is clk subsystem still actively being
maintained?
--
Regards,
Yang Xiwen
More information about the U-Boot
mailing list