时钟
文章平均质量分 74
详解介绍时钟相关 linux 驱动
乐分享-程序员
嵌入式BSP工程师
展开
-
linux驱动-CCF-4 常见困惑
fixed-clock“ 节点 包含clock-frequency 属性,用于配置。注意区分assigned-clock-rate。答:clk_set_rate会向上传递,即设置它的父时钟频率。问题2: 设置时钟频率需要的参数。问题:设备树配置频率的问题。时钟controller。原创 2024-04-24 17:50:15 · 194 阅读 · 0 评论 -
linux驱动-CCF-2 of_clk_provider
/provider 的设备节点//a.provider 根据 clksec 查找data 数据//b. clkspec->args[0]来自于 consumer节点的clocks属性的时钟说明符,//c. data 来自于 provider 特定的data数据void *data;原创 2024-04-24 09:21:05 · 615 阅读 · 0 评论 -
linux驱动-CCF-1 provider 注册时钟
struct clk_hw_onecell_data onecell 填充到struct of_clk_provider *cp 中的data。struct clk_hw 组成 struct clk_hw_onecell_data onecell。b. 调用 of_clk_add_hw_provider 根据 进一步生成of_clk_provider ,并添加到全局列表。void *data;//对应 clk_hw_onecell_data(包含clk provider 注册的所有数组)原创 2024-04-24 13:38:14 · 474 阅读 · 0 评论 -
linux驱动-CCF-3-consumer 接口
获取句柄#prepare 与enable//使能时钟,不会睡眠//使能时钟,不会睡眠int clk_prepare_enable(struct clk *clk) //使能时钟,可能会睡眠 void clk_disable_unprepare(struct clk *clk) //禁止时钟,可能会睡眠unsigned long clk_get_rate(struct clk *clk) //获取时钟频率。原创 2024-04-24 14:43:10 · 352 阅读 · 0 评论 -
linux驱动-CCF-0基础
晶振:提供基础时钟源的(可分为有源晶振、无源晶振两种);PLL: 用于倍频的锁相环;mux: 用于多路时钟源选择;Divider: 用于分频的;gate: 用于时钟使能的与门电路等。原创 2024-04-24 15:41:35 · 261 阅读 · 0 评论 -
linux设备树-时钟
如果该provider的#clock-cells等于0,那么说明该provider就一个output,那么就不需要clock specifier来进一步描述。我们上面说过了,一个HW block(clock consumer)的时钟源可以通过phandle和clock specifier来描述,这里#clock-cells就是说明使用多少个cell(u32)来描述clock specifier。如果不提供这个属性,那么clock-output-names和index的对应关系就是0,1,2……原创 2024-04-23 14:57:53 · 975 阅读 · 0 评论