gpt4 book ai didi

linux-kernel - Linux 内核 - 时钟框架 - clk_prepare/unprepare 的作用是什么?

转载 作者:行者123 更新时间:2023-12-05 01:08:21 26 4
gpt4 key购买 nike

我正在阅读有关 Linux 内核中存在的新时钟框架的以下文章。

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

  • 我不清楚的是新 API 的用法。 clk_prepare/unprepare ,它补充了 clk_启用/禁用蜜蜂。
  • 还提到,虽然 API 的 clk_启用/禁用可以从原子上下文调用,这不适用于 clk_prepare/unprepare (可以 sleep )。为什么有这种功能和行为的分离?
  • 我很想知道它是什么钟表 我们需要准备/不准备他们 ?

  • 谢谢,

    ~vj

    最佳答案

    在 clk_enable 之前,时钟可能需要设置和锁定 PLL、设置电压 OPP 或其他先决条件。例如:
    驱动程序/clk/clk-highbank.c clk_pll_prepare()

    该例程具有等待循环,直到硬件 PLL 显示锁定。不能从原子上下文中做到这一点。另一个 LWN article谈到了 prepare() 与 enable() 的分离。

    PLL 和时钟详细信息特定于相关处理器/SoC。框图将显示通向各种 PLL 的 SoC 输入引脚的时钟树,然后是从每个 PLL 驱动的各种时钟(也可能具有可以打开/关闭的电源域),以及在“准备”完成后单独启用的时钟。说来话长,但希望以上内容对大家有所帮助。

    关于linux-kernel - Linux 内核 - 时钟框架 - clk_prepare/unprepare 的作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17262063/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com