RK3288 修改ddr频率

转载请注明出处:https://www.cnblogs.com/lialong1st/p/10912334.html

CPU:RK3288

系统:Android 5.1

 

RK3288 的 ddr 频率会根据系统运行时的状态做出调试,是系统运行更加流畅,而且也降低功耗

 

rk3288-8846.dts

operating-points = <
    /* KHz    uV */
    200000 1050000
    300000 1050000
    400000 1100000
    533000 1150000
    >;

operating-points 是不同频率多对应的电压值,比如 400MHz 需要的电压是 1.1V。

这里一般不需要自行修改,如果要调,也只是微调。

本人只遇到一次,开机后lcd偶现绿屏,当是 ddr 频率是 400MHz,然后将 400MHz 对应的电压从 1.1V 提高到 1.15V,问题解决。

 

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        400000
    >;

auto-freq-table = <
    240000
    324000
    396000
    528000
    >;

控制 ddr 频率有两种方式

系统默认根据当前的状态 (freq-table) 来调整 ddr 频率,400MHz实际是396MHz,如果没有合适的状态,就会根据当前的负载 (auto-freq-table) 来调整 ddr 频率

一般情况下,查看 ddr 的频率都是 396MHz,RK3288 查看ddr当前运行频率

误区:如果主板接一个 LCD,大家都会以为系统状态是 SYS_STATUS_NORMAL,但是代码默认支持 HDMI,所以正确状态是 SYS_STATUS_DUALVIEW

如果想提高到 528MHz,最直接的方法是将 SYS_STATUS_DUALVIEW 对应的频率修改为 528MHz

 

也可以按照以下方法修改:

1、屏蔽掉 freq-table 中的 SYS_STATUS_DUALVIEW

2、屏蔽掉 SYS_STATUS_DUALVIEW 后,系统在  freq-table 中找不到当前适合的状态,就会进入 auto-freq-table 中,设置第一个为 ddr 频率

显然 240MHz 不是我们需要的,要想得到 528MHz 的频率,就需要把前面的都屏蔽掉。

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        400000
    >;
    
auto-freq-table = <
//  240000
//  324000
//  396000
    528000
    >;

 

posted @ 2019-05-23 15:46  LeeAaron  阅读(2938)  评论(0编辑  收藏  举报