cpu变频原理调用clk_prepare_enable异常调试纪实
来源:互联网 发布:python程序员待遇 编辑:程序博客网 时间:2024/04/28 12:57
On spreadtrum platform, we use dvfs to adjust the cpu's frequency and voltage. Instead of calling the standard clock api, the dvfs owner operates the register directly to adjust the cpu's clock. It has been proved when somebody else new take charge of maintain the code or a new chip need use this strategy, it will occurs various unexpected problems. To avoid of this, the dvfs owner start to modify the code.
But after changing to standard clock api, we found that the the smartphone holds or panicat high probability. Depend on our
analysis, we found that after calling clk_prepare_enable() instead of operate the mpll ref select register, it will occurs this issue and the scene is different every time. We don't kown why. But we suspect the vddarm core maybe lower than expected
From the following test, we found the root cause finally
1 improve vddarm voltage, close mpll, X
2 don't close mpll, Y
Then we the check the different logic between clk_prepare_enable() and set mpll refer register. Set mpll refer register will delay 500us, but clk_prepare_enable() have no delay. So the root case is after enable mpll, it should be wait a moment to assure mpll stable. Or else the mpll will not lock the corrent value.
- cpu变频原理调用clk_prepare_enable异常调试纪实
- CE系统下CPU变频
- VM安装操作系统提示CPU变频
- USB-HOST调试纪实
- qnx 日常工作调试纪实
- 超外差接收机原理和二次变频原因
- S3C6410 USB-HOST调试纪实
- Tomcat Filter异常屏蔽问题排查纪实
- 调试器原理之ptrace调用学习
- 纪实
- 纪实
- 纪实:部署别人程序中的调试
- 某乎大牛就系统原理问题撕逼全纪实
- CPU原理
- CPU原理
- cpu原理
- cpu 原理
- C#调用C++生成的Dll调试异常的问题
- Delphi与JAVA基本数据类型对比
- [SQL SERVER][TroubleShooting] sa登入密碼忘記
- java和c++语言编程的异同之输出制定范围内的素数
- leetcode--Number of Islands
- 组合数学:容斥原理及其应用
- cpu变频原理调用clk_prepare_enable异常调试纪实
- C/C++ N皇后问题
- Java排队吃饭问题
- VHDL数据采集
- 备忘:was通过命令行重启应用
- Uva - 810 - A Dicey Problem
- 服务器开发的一点心得体会
- htmlr认识标签
- 递归和迭代的区别