parent_clk = clk_get_sys(NULL, dc->out->parent_clk_backup); }if(clk_get_parent(clk) != parent_clk) clk_set_parent(clk, parent_clk);if(parent_clk != clk_get_sys(NULL,"pll_p")) {structclk*base_clk=clk_get_parent(parent_clk);/* Assuming either pll_d or pll_d2 is used *...
+ num_parents = of_clk_get_parent_count(node); + + parent_names = kcalloc(num_parents, sizeof(char *), GFP_KERNEL); + if (!parent_names) + return; + + for (i = 0; i < num_parents; i++) + parent_names[i] = of_clk_get_parent_name(node, i); + + data->num_parents...
(struct clk_hw *hw, unsigned long rate, unsigned long parent_rate); int (*set_rate_and_parent)(struct clk_hw *hw, unsigned long rate, unsigned long parent_rate, u8 index); unsigned long (*recalc_accuracy)(struct clk_hw *hw, unsigned long parent_accuracy); int (*get_phase)(struct ...
51CTO博客已为您找到关于get parent clk failed的相关内容,包含IT学习相关文档代码介绍、相关教程视频课程,以及get parent clk failed问答内容。更多get parent clk failed相关解答可以来51CTO博客参与分享和学习,帮助广大IT技术人实现成长和进步。
int clk_set_parent(struct clk *clk, struct clk *parent); struct clk *clk_get_parent(struct clk *clk); struct clk *clk_get_sys(const char *dev_id, const char *con_id); int clk_add_alias(const char *alias, const char *alias_dev_name, char *id, struct device *dev); ...
.clk_get_parent= omap2_clk_get_parent, .clk_disable_unused= omap2_clk_disable_unused, #ifdef CONFIG_CPU_FREQ .clk_init_cpufreq_table = omap2_clk_init_cpufreq_table, #endif }; 初始化clk模型: static struct clk *onchip_34xx_clks[] __initdata = { ...
parent - clk是由parent分出来的。那么如果parent关闭了,当前clk也就没有了。 secondary - 第二时钟源,用于enable/disable当前clk。 usecount - 引用计数。 get_rate, set_rate, enable, disable, set_parent - 很显然,这些函数指针指到实际操作的函数。clk.h中的各接口函数最后都会调用到这里的函数指针。函数...
const char *parent_name, unsigned long flags, void __iomem *reg, u8 shift, u8 width, u8 clk_divider_flags, const struct clk_div_table *table, spinlock_t *lock); 4. mux clock 这一类clock可以选择多个parent,因为会实现.get_parent/.set_parent/.recalc_rate回调,可通过下面两个接口注册: ...
dpll4_ck_rate = clk_get_rate(clk_get_parent(dss.dpll4_m4_ck)); dpll4_m4_ck_rate = clk_get_rate(dss.dpll4_m4_ck); seq_printf(s,"- DSS -\n"); seq_printf(s,"dpll4_ck %lu\n", dpll4_ck_rate);if(cpu_is_omap3630()) ...
clk->rate = clk_get_rate(clk->parent); } static int lcd_func_clk_enable(struct clk *clk) { unsigned long flags; spin_lock_irqsave(&lcd_ci_share_lock, flags); CLK_SET_BITS((LCD_CLK_EN | LCD_CLK_RST), 0); spin_unlock_irqrestore(&lcd_ci_share_lock, flags); ...