Re: [PATCH 1/4] arm64: dts: rockchip: list all CPU supplies on ArmSoM Sige5
From: Piotr Oniszczuk <hidden>
Date: 2025-06-05 13:22:55
Also in:
linux-devicetree, linux-rockchip, lkml
Wiadomość napisana przez Alexey Charkov [off-list ref] w dniu 4 cze 2025, o godz. 21:12: On Wed, Jun 4, 2025 at 10:38 PM Nicolas Frattaroli [off-list ref] wrote:quoted
Frequencies are fine, but I don't think the more power hungry big CPU cluster gets any voltage scaling without it. Once I try to load the system enough that the governor decides to bump the big cluster frequency up, the regulator stays at 850000 microvolts, causing random reboots when the whole cluster starts starving. With the patch, voltage oscillates between 700000-737000 microvolts in idle and jumps up to 950000 under load, and the system seems stable. Here's what I used to monitor the voltage (there must be a better way to do it, but it works): sige5 ~ # watch cat `grep -r . /sys/class/regulator/*/name | grep vdd_cpu_big_s0 | sed -e 's/name.*//'`/microvolts And in another terminal: sige5 ~ # stress-ng -c8
Alexey, I see you are using rk3576 board like me (nanopi-m5) Have you on your board correctly working cpu dvfs? I mean: [1][desired clocks reported by kernel sysfs are in pair with [2[]cur clocks? In my case i see mine cpu lives totally on it’s own with dvfs: Requested is [1] Running is [2] Measured is [3] random read 1: Requested CPU4: 408 MHz Requested CPU0: 408 MHz Running CPU4: 1800 MHz Running CPU0: 1416 MHz Measured on HW: 1579.03 MHz random read 2: Requested CPU4: 1608 MHz Requested CPU0: 408 MHz Running CPU4: 2016 MHz Running CPU0: 1800 MHz Measured on HW: 410.33 MHz random read 3: Requested CPU4: 600 MHz Requested CPU0: 1800 MHz Running CPU4: 816 MHz Running CPU0: 1008 MHz Measured on HW: 2275.07 MHz random read 4: Requested CPU4: 1608 MHz Requested CPU0: 1200 MHz Running CPU4: 816 MHz Running CPU0: 816 MHz Measured on HW: 2114.58 MHz this is on rk3576 on i.e allwinner h618 or rk3588 all looks quite normal - [1] and [2] are equal... my scaling governor is on_demand - so for sure clocks are dynamic - but i.e. on 3588 with the same binaries - i can't catch -at any random read - that requested is not equal to running while on 3576 almost any random read gives significant differences. [1] scaling_cur_freq in sysfs [2] cpuinfo_cur_freq in sysfs [3] code to estimate arm cpu clock from http://uob-hpc.github.io/2017/11/22/arm-clock-freq.html
This might warrant a note in the commit message I guess :) Thanks for your review and testing! Best regards, Alexey _______________________________________________ Linux-rockchip mailing list Linux-rockchip@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-rockchip