rk312x: add dvfs config

Signed-off-by: 陈亮 <cl@rock-chips.com>
This commit is contained in:
陈亮
2014-07-28 00:52:25 -07:00
parent a9a4971ca9
commit ca32c0ff85
3 changed files with 123 additions and 0 deletions

View File

@@ -228,3 +228,52 @@
};
};
&clk_core_dvfs_table {
operating-points = <
/* KHz uV */
408000 1250000
600000 1250000
696000 1250000
816000 1250000
>;
status="okay";
};
&clk_gpu_dvfs_table {
operating-points = <
/* KHz uV */
200000 125000
300000 125000
>;
status="okay";
};
&clk_ddr_dvfs_table {
operating-points = <
/* KHz uV */
200000 950000
300000 950000
400000 1000000
533000 1050000
>;
freq-table = <
/*status freq(KHz)*/
SYS_STATUS_NORMAL 400000
SYS_STATUS_SUSPEND 200000
SYS_STATUS_VIDEO_1080P 240000
SYS_STATUS_VIDEO_4K 400000
SYS_STATUS_PERFORMANCE 528000
SYS_STATUS_DUALVIEW 400000
SYS_STATUS_BOOST 324000
SYS_STATUS_ISP 533000
>;
auto-freq-table = <
240000
324000
396000
528000
>;
auto-freq=<0>;
status="disable";
};

View File

@@ -1,6 +1,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/suspend/rockchip-pm.h>
#include <dt-bindings/sensor-dev.h>
#include <dt-bindings/clock/rk_system_status.h>
#include "skeleton.dtsi"
#include "rk312x-clocks.dtsi"
@@ -602,4 +603,76 @@
interrupt-names = "iep_mmu";
};
dvfs {
temp-limit-enable = <0>;
target-temp = <80>;
vd_arm: vd_arm {
regulator_name = "vdd_arm";
pd_core {
clk_core_dvfs_table: clk_core {
operating-points = <
/* KHz uV */
312000 1100000
504000 1100000
816000 1100000
1008000 1100000
>;
temp-channel = <1>;
normal-temp-limit = <
/*delta-temp delta-freq*/
3 96000
6 144000
9 192000
15 384000
>;
performance-temp-limit = <
/*temp freq*/
110 816000
>;
status = "okay";
regu-mode-table = <
/*freq mode*/
1008000 4
0 3
>;
regu-mode-en = <0>;
};
};
};
vd_logic: vd_logic {
regulator_name = "vdd_logic";
pd_ddr {
clk_ddr_dvfs_table: clk_ddr {
operating-points = <
/* KHz uV */
200000 1200000
300000 1200000
400000 1200000
>;
status = "disabled";
};
};
pd_gpu {
clk_gpu_dvfs_table: clk_gpu {
operating-points = <
/* KHz uV */
200000 1200000
300000 1200000
400000 1200000
>;
status = "okay";
regu-mode-table = <
/*freq mode*/
200000 4
0 3
>;
regu-mode-en = <0>;
};
};
};
};
};

View File

@@ -112,6 +112,7 @@ static void __init rk312x_dt_init_timer(void)
{
of_clk_init(NULL);
clocksource_of_init();
of_dvfs_init();
}
static void __init rk312x_reserve(void)