Re: [GIT PULL] clk: thead: Updates for v6.17, part 2

From: Drew Fustini
Date: Thu Jul 24 2025 - 17:11:41 EST


On Thu, Jul 24, 2025 at 01:48:23PM -0700, Drew Fustini wrote:
> Hi Stephen,
>
> I'm sending this followup PR in case there is still time to include it
> for your 6.17 PR. Yao Zi refactored mux clk registration which fixes an
> orphan mux clk issue which would occur when booting with mainline uboot.
[snip]
> Michal Wilczynski (1):
> clk: thead: Mark essential bus clocks as CLK_IGNORE_UNUSED
>
> Yao Zi (2):
> clk: thead: th1520-ap: Correctly refer the parent of osc_12m
> clk: thead: th1520-ap: Describe mux clocks with clk_mux
>
> drivers/clk/thead/clk-th1520-ap.c | 109 +++++++++++++++++---------------------
> 1 file changed, 48 insertions(+), 61 deletions(-)

My apologies, I failed to just send the delta between thead-clk-for-v6.17 and
thead-clk-for-v6.17-p2.

The following is the correct text of the pull request. Hopefull this is
acceptable?

Thanks,
Drew

--
The following changes since commit d274c77ffa202b70ad01d579f33b73b4de123375:

clk: thead: th1520-ap: Correctly refer the parent of osc_12m (2025-07-13 12:46:58 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/fustini/linux.git tags/thead-clk-for-v6.17-p2

for you to fetch changes up to 54edba916e2913b0893b0f6404b73155d48374ea:

clk: thead: th1520-ap: Describe mux clocks with clk_mux (2025-07-22 15:40:54 -0700)

----------------------------------------------------------------
T-HEAD clock changes for v6.17, part 2

One more improvement for the T-HEAD TH1520 clock controller this cycle:

Yao Zi has fixed an issue where the c910 mux clk could end up as an
orphan in CCF when the bootloader reparents it to the c910-i0 mux clk.
The solution is to refactor the handling of mux clocks by embedding a
clk_mux structure directly in ccu_mux. This allows the mux clocks to be
registered with devm_clk_hw_register() without allocating any new clk_hw
pointer which solves the orphan issue.

This change has been tested in linux-next. The LPi4a still boots okay
without clk_ignore_unused and peripherals like serial, emmc and ethernet
are functional. The file /sys/kernel/debug/clk/c910/clk_possible_parents
now correctly outputs: "c910-i0 cpu-pll1"

Link: https://lore.kernel.org/linux-riscv/20250722080535.60027-2-ziyao@xxxxxxxxxxx/
Signed-off-by: Drew Fustini <fustini@xxxxxxxxxx>

----------------------------------------------------------------
Yao Zi (1):
clk: thead: th1520-ap: Describe mux clocks with clk_mux

drivers/clk/thead/clk-th1520-ap.c | 95 +++++++++++++++------------------------
1 file changed, 37 insertions(+), 58 deletions(-)