fixed_clk固定时钟实现 fixed_clk针对像PLL这种具有固定频率的时钟,对于PLL,我们只需要实现.recalc_rate函数。 设备树: #define PLL0_CLK 0clocks{osc24M:osc24M{compatible="fixed-clock";#clock-cells = <0>;clock-output-names="osc24M";clock-frequenc
6. clock-frequency 当不使用assigned-clock-rates为输出时钟指定大小时,可以利用clock-frequency进行指定。像下面这样,指定了osc的时钟频率为32.678Khz。 osc: oscillator { compatible = "fixed-clock"; #clock-cells = <1>; clock-frequency = <32678>; clock-output-names = "osc"; }; 1.2 Clock consumers...
#define PLL0_CLK 0clocks{osc24M:osc24M{compatible = "fixed-clock";#clock-cells = <0>;clock-output-names = "osc24M";clock-frequency = <24000000>;};pll0:pll0{compatible = "xx, choogle-fixed-clk";#clock-cells = <0>;clock-id = <PLL0_CLK>;clock-frequency = <1000000000>;clock-outp...
1. fixed rate clock 这一类clock具有固定的频率,不能开关、不能调整频率、不能选择parent,是最简单的一类clock。可以直接通过 DTS 配置的方式支持。也可以通过接口,可以直接注册 fixed rate clock,如下: CLK_OF_DECLARE(fixed_clk,"fixed-clock", of_fixed_clk_setup); struct clk *clk_register_fixed_rate(s...
clock-names="baud","register"; }; 这表示具有两个时钟输入的设备,两个时钟输入名称为"baud"和"register"。"baud"时钟连接到&osc设备的输出 1,"register"时钟连接到&ref设备的输出 0。 示例 /* external oscillator */ osc:oscillator { compatible ="fixed-clock"; ...
叶节点是使用 clock 做为输入的、有具体功能的 HW block。 根据clock 的特点,clock framework 将 clock 分为 fixed rate、gate、devider、mux、fixed factor、composite 六类。 数据结构 上面六类本质上都属于clock device,内核把这些 clock HW block 的特性抽取出来,用 struct clk_hw 来表示,具体如下: ...
下面是我到目前为止所得到的一个例子: /* fixed clock oscillators */ compatible= "fixed-clock"; #clock-cells 浏览8提问于2015-03-19得票数 2 回答已采纳 1回答 Linux加载i2c驱动程序 、、 我的板上有Linux4.4。我还有两个i2c设备及其驱动程序。当我将第一个设备连接到板上时,我在dmesg中看到了_...
fixed rate clock 这一类clock具有固定的频率,不能开关、不能调整频率、不能选择parent,是最简单的一类clock。可以直接通过 DTS 配置的方式支持。也可以通过接口,可以直接注册 fixed rate clock,如下: CLK_OF_DECLARE(fixed_clk,"fixed-clock", of_fixed_clk_setup);structclk *clk_register_fixed_rate(structdevi...
1. fixed rate clock 这一类clock具有固定的频率,不能开关、不能调整频率、不能选择parent,是最简单的一类clock。可以直接通过 DTS 配置的方式支持。也可以通过接口,可以直接注册 fixed rate clock,如下: 复制 CLK_OF_DECLARE(fixed_clk,"fixed-clock",of_fixed_clk_setup);struct clk*clk_register_fixed_rate(...
CLK_OF_DECLARE(fixed_clk, "fixed-clock", of_fixed_clk_setup); struct clk *clk_register_fixed_rate(struct device *dev, const char *name, const char *parent_name, unsigned long flags, unsigned long fixed_rate); 2. gate clock 这一类clock只可开关(会提供.enable/.disable回调),可使用下面接...