[RK3399][Android7.1] 调试笔记 --- DDR工作频率的获取和设置

本文介绍了在Android 7.1系统上,基于RK3399平台的DDR工作频率获取与设置。在Kernel v4.4.55中,由于ddr devfreq的启用,驱动在加载时会自动获取默认DDR频率。通过分析rockchip_dmc.c,发现DDR的实际频率并非PCLK_DDR的200MHz,而是SCLK_DDRCLK的800MHz。系统开机后,devfreq监控线程利用recalc_rate函数获取当前DDR频率,而set_rate接口用于设定频率。

OS: Android 7.1
Board: Firefly-RK3399
Kernel: v4.4.55

  之前有提到loader中有设置ddr频率为800MHz,当kernel中开启了ddr devfreq之后,驱动加载时会获取ddr默认频率。

rockchip_dmc.c:

static int rockchip_dmcfreq_probe(struct platform_device *pdev)
{
    //根据name获取对应的struct clk结构
    data->dmc_clk = devm_clk_get(dev, "dmc_clk");
    ......
    //获取clk的当前rate
    data->rate = clk_get_rate(data->dmc_clk);
    ...
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值