rk3288 ddr 开发指南

本文介绍了如何初始化DDR内存,包括DDR版本、容量和频率的设置。在Linux kernel 4.4下,通过修改设备树(DTS)中的dmc节点状态来开启或关闭DDR变频功能。同时,展示了如何查看和调整DDR频率,以及检查DDR带宽利用率。此外,还提供了查看系统内存总量的方法。
摘要由CSDN通过智能技术生成

ddr loader中的打印

DDR Version 1.08 20190523   //ddr版本号
//开始初始化ddr
In
SRX
Channel a: DDR3 400MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
Channel b: DDR3 400MHz
Bus Width=32 Col=10 Bank=8 Row=15 CS=1 Die Bus-Width=16 Size=1024MB
OUT    //退出ddr初始化

打开关闭ddr变频功能

        对于 kernel 4.4,需要找到 dts 中最终的 dmc 节点,将 status 改成 disabled 就可以 disable kernel 的DDR 变频功能。相反的,改成 okay,就会 enable DDR 变频功能。
 

&dmc {
    status = "okay"; /* enable kernel DDR变频 */
    ........
};

        由于早期代码,dmc 节点有依赖于 dfi 节点,如果 dfi 节点为 disabled,也会导致 dmc 节点无
效。所以最好 dfi 节点的 status 保持跟 dmc 一致。

&dfi {
    status = "okay";
};

查看ddr容量

rk3288:/ # cat /proc/meminfo
MemTotal:        2045196 kB

ddr定频

获取固件支持的 DDR 频率:
    cat /sys/class/devfreq/dmc/available_frequencies
设置频率:
    echo userspace > /sys/class/devfreq/dmc/governor
    echo 300000000 > /sys/class/devfreq/dmc/min_freq //这条是防止要设置的频率低于 min_freq,导致设置失败
    echo 300000000 > /sys/class/devfreq/dmc/userspace/set_freq

查看ddr带宽利用率

rk3288:/ # cat /sys/class/devfreq/dmc/load
100@396000000Hz
100表示 DDR 的当前带宽利用率是 100%

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值