Skip to content
Snippets Groups Projects
Commit f4af09de authored by Natalia Kovalenko's avatar Natalia Kovalenko Committed by Alessandro Pecugi
Browse files

[C31] [DTS] dmc: Add supported DDR frequencies

from boot log:
dmc: Get wrong frequency, Request 800000000, Current 856000000
dmc: could not find power_model node
dmc: dev_pm_opp_set_rate: failed to find current OPP for freq 856000000 (-34)
dmc: Get wrong frequency, Request 200000000, Current 856000000

from DDR training log:
ddr_set_rate to 328MHZ
ddr_set_rate to 666MHZ
ddr_set_rate to 416MHZ, ctl_index 0
ddr_set_rate to 856MHZ, ctl_index 1
support 416 856 328 666 MHz, current 856MHz

In dmc_opp_table node disable operating point nodes with unsupported
frequency and add opp nodes for supported 328 416 666 856 MHZ frequencies
In dmc node change the frequencies for different system statuses (scenario).
The values are taken from reference board with similar LPDDR4 memory.
Set auto-freq-en to 0, so disable load frequency scaling function and
enable scenario frequency scaling.

Scenario frequency scaling means: entered the specified scenario,
DDR frequency will change to the corresponding frequency defined by
SYS_STATUS_XXX.
The vop-bw-dmc-freq values ​​are valid when load frequency scaling
enabled (auto-freq-en=1).
parent 00a3cc5d
No related branches found
No related tags found
No related merge requests found
......@@ -180,34 +180,72 @@ &gpu {
};
&dfi {
status = "disabled";
status = "okay";
};
&dmc {
status = "disabled";
status = "okay";
center-supply = <&vdd_center>;
upthreshold = <40>;
downdifferential = <20>;
system-status-freq = <
/*system status freq(KHz)*/
SYS_STATUS_NORMAL 800000
SYS_STATUS_REBOOT 528000
SYS_STATUS_SUSPEND 200000
SYS_STATUS_VIDEO_1080P 200000
SYS_STATUS_VIDEO_4K 600000
SYS_STATUS_VIDEO_4K_10B 800000
SYS_STATUS_PERFORMANCE 800000
SYS_STATUS_BOOST 400000
SYS_STATUS_DUALVIEW 600000
SYS_STATUS_ISP 600000
SYS_STATUS_NORMAL 856000
SYS_STATUS_REBOOT 856000
SYS_STATUS_SUSPEND 328000
SYS_STATUS_VIDEO_1080P 666000
SYS_STATUS_VIDEO_4K 856000
SYS_STATUS_VIDEO_4K_10B 856000
SYS_STATUS_PERFORMANCE 856000
SYS_STATUS_BOOST 856000
SYS_STATUS_DUALVIEW 856000
SYS_STATUS_ISP 856000
>;
vop-bw-dmc-freq = <
/* min_bw(MB/s) max_bw(MB/s) freq(KHz) */
0 577 200000
578 1701 300000
1702 99999 400000
0 762 416000
763 3012 666000
3013 99999 856000
>;
auto-min-freq = <200000>;
auto-min-freq = <328000>;
auto-freq-en = <0>;
};
&dmc_opp_table {
opp-200000000 {
status = "disabled";
};
opp-300000000 {
status = "disabled";
};
opp-328000000 {
opp-hz = /bits/ 64 <328000000>;
opp-microvolt = <900000>;
};
opp-400000000 {
status = "disabled";
};
opp-416000000 {
opp-hz = /bits/ 64 <416000000>;
opp-microvolt = <900000>;
};
opp-528000000 {
status = "disabled";
};
opp-600000000 {
status = "disabled";
};
opp-666000000 {
opp-hz = /bits/ 64 <666000000>;
opp-microvolt = <900000>;
};
opp-800000000 {
status = "disabled";
};
opp-856000000 {
opp-hz = /bits/ 64 <856000000>;
opp-microvolt = <900000>;
};
};
&tsadc {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment