Skip to content

Commit 28523a4

Browse files
committed
sunxi-6.18: fix H3/H5 RCU stall / CPU hang during DVFS
Disable the megous aw-opp-6.18 patch 0002 ("Don't use CPU PLL gating and CPUX reparenting to HOSC") on the current (6.18) kernel. That patch removes two CPU-clock safety notifiers from ccu-sun8i-h3.c: - sun8i_h3_pll_cpu_nb - gates pll_cpux across rate changes so it relocks cleanly - sun8i_h3_cpu_nb - reparents the CPU to the 24 MHz oscillator while pll_cpux is being reprogrammed, then switches back Without them the core keeps executing off pll_cpux while the PLL is mid relock. On 6.18 the sunxi clk core was refactored (round_rate -> determine_rate in ccu_nkmp, ccu_mp rework), and that live PLL change now glitches the CPU at the first cpufreq/DVFS transition -> core hang -> RCU stall. It manifests right after thermal zone init (when the governor starts scaling) and bricks boot on H3/H5 boards. The patch is identical on legacy 6.12, which boots fine - the difference is purely the 6.18 clk-core rework, so this is an interaction regression, not a patch that stopped applying. Leaving 0002 unapplied restores upstream's notifiers (the 6.12 behaviour) and is the minimal, conservative fix; the OPP tables and 0001 (max P/M=1) are untouched. Edge (aw-opp-7.0) is unaffected: it applies 0002 but then reverts it via 0012 and refines with 0013/0008, so the notifiers are already present there - it must NOT disable 0002 (0012 would have nothing to revert). Confirmed on hardware: orangepizeroplus (H5) now boots normally on current. Signed-off-by: Igor Pecovnik <igor@armbian.com>
1 parent cbd3cb3 commit 28523a4

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

patch/kernel/archive/sunxi-6.18/series.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
patches.megous/audio-6.18/0010-sound-soc-sun8i-codec-Add-support-for-digital-part-o.patch
6565
patches.megous/audio-6.18/0011-ASoC-ec25-New-codec-driver-for-the-EC25-modem.patch
6666
patches.megous/aw-opp-6.18/0001-clk-sunxi-ng-Set-maximum-P-and-M-factors-to-1-for-H3.patch
67-
patches.megous/aw-opp-6.18/0002-clk-sunxi-ng-Don-t-use-CPU-PLL-gating-and-CPUX-repar.patch
67+
- patches.megous/aw-opp-6.18/0002-clk-sunxi-ng-Don-t-use-CPU-PLL-gating-and-CPUX-repar.patch
6868
patches.megous/aw-opp-6.18/0003-ARM-dts-sun8i-h3-Use-my-own-more-aggressive-OPPs-on-.patch
6969
patches.megous/aw-opp-6.18/0004-arm64-dts-sun50i-h5-Use-my-own-more-aggressive-OPPs-.patch
7070
patches.megous/aw-opp-6.18/0005-ARM-dts-sun8i-h3-orange-pi-pc-Increase-max-CPUX-volt.patch

0 commit comments

Comments
 (0)