加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux-kernel – Linux内核 – 时钟框架 – clk_prepare / unrep

发布时间:2020-12-13 23:08:28 所属栏目:Linux 来源:网络整理
导读:我正在阅读以下关于 Linux内核中存在的新时钟框架的文章. http://lwn.net/Articles/489668/ 我不清楚的是,新API的clk_prepare / nothingpare的使用是对clk_enable / disable API的补充. 还提到虽然可以从原子上下文调用API的clk_enable / disable,但这不适用
我正在阅读以下关于 Linux内核中存在的新时钟框架的文章.

http://lwn.net/Articles/489668/

>我不清楚的是,新API的clk_prepare / nothingpare的使用是对clk_enable / disable API的补充.
>还提到虽然可以从原子上下文调用API的clk_enable / disable,但这不适用于clk_prepare / unexpare(可以睡眠).为什么这种功能和行为分离?
>我很想知道我们需要准备/取消它们的时钟是什么?

谢谢,

?VJ

解决方法

时钟可能需要设置和锁定PLL,设置电压OPP或clk_enable之前的其他先决条件操作.例如:
????drivers / clk / clk-highbank.c clk_pll_prepare()

该例程具有等待循环,其旋转直到硬件PLL显示锁定.不能从原子上下文那样做.另一个LWN article对prepare()vs enable()分离有点说.

PLL和时钟详细信息特定于所讨论的处理器/ SoC.方框图将显示通向各种PLL的SoC输入引脚的时钟树,然后是从每个PLL驱动的各种时钟(也可以具有可以打开/关闭的电源域),并且一旦“准备”完成就单独启用时钟.很长的故事,但我希望上面的内容可能会有所帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读