mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-01 15:14:52 +00:00

Add an Operating Performance Points table for the CPU cores to enable Dynamic Voltage & Frequency Scaling on the A100. Signed-off-by: Shuosheng Huang <huangshuosheng@allwinnertech.com> [masterr3c0rd@epochal.quest: fix typos in -cpu-opp, use compatible] Signed-off-by: Cody Eksal <masterr3c0rd@epochal.quest> Link: https://patch.msgid.link/20241031070232.1793078-14-masterr3c0rd@epochal.quest Signed-off-by: Chen-Yu Tsai <wens@csie.org>
91 lines
2.0 KiB
Plaintext
91 lines
2.0 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
// Copyright (c) 2020 Yangtao Li <frank@allwinnertech.com>
|
|
// Copyright (c) 2020 ShuoSheng Huang <huangshuosheng@allwinnertech.com>
|
|
|
|
/ {
|
|
cpu_opp_table: opp-table-cpu {
|
|
compatible = "allwinner,sun50i-a100-operating-points";
|
|
nvmem-cells = <&cpu_speed_grade>;
|
|
opp-shared;
|
|
|
|
opp-408000000 {
|
|
clock-latency-ns = <244144>; /* 8 32k periods */
|
|
opp-hz = /bits/ 64 <408000000>;
|
|
|
|
opp-microvolt-speed0 = <900000>;
|
|
opp-microvolt-speed1 = <900000>;
|
|
opp-microvolt-speed2 = <900000>;
|
|
};
|
|
|
|
opp-600000000 {
|
|
clock-latency-ns = <244144>; /* 8 32k periods */
|
|
opp-hz = /bits/ 64 <600000000>;
|
|
|
|
opp-microvolt-speed0 = <900000>;
|
|
opp-microvolt-speed1 = <900000>;
|
|
opp-microvolt-speed2 = <900000>;
|
|
};
|
|
|
|
opp-816000000 {
|
|
clock-latency-ns = <244144>; /* 8 32k periods */
|
|
opp-hz = /bits/ 64 <816000000>;
|
|
|
|
opp-microvolt-speed0 = <940000>;
|
|
opp-microvolt-speed1 = <900000>;
|
|
opp-microvolt-speed2 = <900000>;
|
|
};
|
|
|
|
opp-1080000000 {
|
|
clock-latency-ns = <244144>; /* 8 32k periods */
|
|
opp-hz = /bits/ 64 <1080000000>;
|
|
|
|
opp-microvolt-speed0 = <1020000>;
|
|
opp-microvolt-speed1 = <980000>;
|
|
opp-microvolt-speed2 = <950000>;
|
|
};
|
|
|
|
opp-1200000000 {
|
|
clock-latency-ns = <244144>; /* 8 32k periods */
|
|
opp-hz = /bits/ 64 <1200000000>;
|
|
|
|
opp-microvolt-speed0 = <1100000>;
|
|
opp-microvolt-speed1 = <1020000>;
|
|
opp-microvolt-speed2 = <1000000>;
|
|
};
|
|
|
|
opp-1320000000 {
|
|
clock-latency-ns = <244144>; /* 8 32k periods */
|
|
opp-hz = /bits/ 64 <1320000000>;
|
|
|
|
opp-microvolt-speed0 = <1160000>;
|
|
opp-microvolt-speed1 = <1060000>;
|
|
opp-microvolt-speed2 = <1030000>;
|
|
};
|
|
|
|
opp-1464000000 {
|
|
clock-latency-ns = <244144>; /* 8 32k periods */
|
|
opp-hz = /bits/ 64 <1464000000>;
|
|
|
|
opp-microvolt-speed0 = <1180000>;
|
|
opp-microvolt-speed1 = <1180000>;
|
|
opp-microvolt-speed2 = <1130000>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&cpu0 {
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
};
|
|
|
|
&cpu1 {
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
};
|
|
|
|
&cpu2 {
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
};
|
|
|
|
&cpu3 {
|
|
operating-points-v2 = <&cpu_opp_table>;
|
|
};
|