clk: sunxi-ng: h6: Reparent CPUX during PLL CPUX rate change
authorJernej Skrabec <jernej.skrabec@gmail.com>
Fri, 13 Oct 2023 18:17:12 +0000 (20:17 +0200)
committerJernej Skrabec <jernej.skrabec@gmail.com>
Mon, 15 Apr 2024 21:04:22 +0000 (23:04 +0200)
commit7e91ed763dc07437777bd012af7a2bd4493731ff
tree8ed77c936204b3bab20ca0ac859a9149212ede89
parent4cece764965020c22cff7665b18a012006359095
clk: sunxi-ng: h6: Reparent CPUX during PLL CPUX rate change

While PLL CPUX clock rate change when CPU is running from it works in
vast majority of cases, now and then it causes instability. This leads
to system crashes and other undefined behaviour. After a lot of testing
(30+ hours) while also doing a lot of frequency switches, we can't
observe any instability issues anymore when doing reparenting to stable
clock like 24 MHz oscillator.

Fixes: 524353ea480b ("clk: sunxi-ng: add support for the Allwinner H6 CCU")
Reported-by: Chad Wagner <wagnerch42@gmail.com>
Link: https://forum.libreelec.tv/thread/27295-orange-pi-3-lts-freezes/
Tested-by: Chad Wagner <wagnerch42@gmail.com>
Reviewed-by: Chen-Yu Tsai <wens@csie.org>
Link: https://lore.kernel.org/r/20231013181712.2128037-1-jernej.skrabec@gmail.com
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
drivers/clk/sunxi-ng/ccu-sun50i-h6.c