]> www.infradead.org Git - users/jedix/linux-maple.git/commit
arm64: dts: rockchip: Add OPP data for CPU cores on RK3588
authorAlexey Charkov <alchark@gmail.com>
Mon, 17 Jun 2024 18:28:56 +0000 (22:28 +0400)
committerHeiko Stuebner <heiko@sntech.de>
Mon, 24 Jun 2024 16:14:03 +0000 (18:14 +0200)
commit276856db91b46eaa7a4c19226c096a9dc899a3e9
tree3bda4c44ca599e2e6d8d3d9630363de8e1a9fd88
parent0ba0560982bc8d0c3fb3ca209fd0ed29f81402ac
arm64: dts: rockchip: Add OPP data for CPU cores on RK3588

By default the CPUs on RK3588 start up in a conservative performance
mode. Add frequency and voltage mappings to the device tree to enable
dynamic scaling via cpufreq.

OPP values are adapted from Radxa's downstream kernel for Rock 5B [1],
stripping them down to the minimum frequency and voltage combinations
as expected by the generic upstream cpufreq-dt driver, and also dropping
those OPPs that don't differ in voltage but only in frequency (keeping
the top frequency OPP in each case).

Note that this patch ignores voltage scaling for the CPU memory
interface which the downstream kernel does through a custom cpufreq
driver, and which is why the downstream version has two sets of voltage
values for each OPP (the second one being meant for the memory
interface supply regulator). This is done instead via regulator
coupling between CPU and memory interface supplies on affected boards.

This has been tested on Rock 5B with u-boot 2023.11 compiled from
Collabora's integration tree [2] with binary bl31 and appears to be
stable both under active cooling and passive cooling (with throttling)

[1] https://github.com/radxa/kernel/blob/stable-5.10-rock5/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
[2] https://gitlab.collabora.com/hardware-enablement/rockchip-3588/u-boot

Signed-off-by: Alexey Charkov <alchark@gmail.com>
Link: https://lore.kernel.org/r/20240617-rk-dts-additions-v5-6-c1f5f3267f1e@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
arch/arm64/boot/dts/rockchip/rk3588-opp.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/rockchip/rk3588.dtsi
arch/arm64/boot/dts/rockchip/rk3588s.dtsi