Home
last modified time | relevance | path

Searched refs:clkdm (Results 1 – 26 of 26) sorted by relevance

/linux-4.4.14/arch/arm/mach-omap2/
Dclockdomain.c47 struct clockdomain *clkdm, *temp_clkdm; in _clkdm_lookup() local
52 clkdm = NULL; in _clkdm_lookup()
56 clkdm = temp_clkdm; in _clkdm_lookup()
61 return clkdm; in _clkdm_lookup()
72 static int _clkdm_register(struct clockdomain *clkdm) in _clkdm_register() argument
76 if (!clkdm || !clkdm->name) in _clkdm_register()
79 pwrdm = pwrdm_lookup(clkdm->pwrdm.name); in _clkdm_register()
82 clkdm->name, clkdm->pwrdm.name); in _clkdm_register()
85 clkdm->pwrdm.ptr = pwrdm; in _clkdm_register()
88 if (_clkdm_lookup(clkdm->name)) in _clkdm_register()
[all …]
Dclockdomain.h75 } clkdm; member
92 struct clockdomain *clkdm; member
165 int (*clkdm_clear_all_wkdeps)(struct clockdomain *clkdm);
169 int (*clkdm_clear_all_sleepdeps)(struct clockdomain *clkdm);
170 int (*clkdm_sleep)(struct clockdomain *clkdm);
171 int (*clkdm_wakeup)(struct clockdomain *clkdm);
172 void (*clkdm_allow_idle)(struct clockdomain *clkdm);
173 void (*clkdm_deny_idle)(struct clockdomain *clkdm);
174 int (*clkdm_clk_enable)(struct clockdomain *clkdm);
175 int (*clkdm_clk_disable)(struct clockdomain *clkdm);
[all …]
Dcminst44xx.c388 static int omap4_clkdm_clear_all_wkup_sleep_deps(struct clockdomain *clkdm) in omap4_clkdm_clear_all_wkup_sleep_deps() argument
393 if (!clkdm->prcm_partition) in omap4_clkdm_clear_all_wkup_sleep_deps()
396 for (cd = clkdm->wkdep_srcs; cd && cd->clkdm_name; cd++) { in omap4_clkdm_clear_all_wkup_sleep_deps()
397 if (!cd->clkdm) in omap4_clkdm_clear_all_wkup_sleep_deps()
400 mask |= 1 << cd->clkdm->dep_bit; in omap4_clkdm_clear_all_wkup_sleep_deps()
404 omap4_cminst_clear_inst_reg_bits(mask, clkdm->prcm_partition, in omap4_clkdm_clear_all_wkup_sleep_deps()
405 clkdm->cm_inst, clkdm->clkdm_offs + in omap4_clkdm_clear_all_wkup_sleep_deps()
410 static int omap4_clkdm_sleep(struct clockdomain *clkdm) in omap4_clkdm_sleep() argument
412 if (clkdm->flags & CLKDM_CAN_HWSUP) in omap4_clkdm_sleep()
413 omap4_cminst_clkdm_enable_hwsup(clkdm->prcm_partition, in omap4_clkdm_sleep()
[all …]
Dcm33xx.c297 static int am33xx_clkdm_sleep(struct clockdomain *clkdm) in am33xx_clkdm_sleep() argument
299 am33xx_cm_clkdm_force_sleep(clkdm->cm_inst, clkdm->clkdm_offs); in am33xx_clkdm_sleep()
303 static int am33xx_clkdm_wakeup(struct clockdomain *clkdm) in am33xx_clkdm_wakeup() argument
305 am33xx_cm_clkdm_force_wakeup(clkdm->cm_inst, clkdm->clkdm_offs); in am33xx_clkdm_wakeup()
309 static void am33xx_clkdm_allow_idle(struct clockdomain *clkdm) in am33xx_clkdm_allow_idle() argument
311 am33xx_cm_clkdm_enable_hwsup(clkdm->cm_inst, clkdm->clkdm_offs); in am33xx_clkdm_allow_idle()
314 static void am33xx_clkdm_deny_idle(struct clockdomain *clkdm) in am33xx_clkdm_deny_idle() argument
316 am33xx_cm_clkdm_disable_hwsup(clkdm->cm_inst, clkdm->clkdm_offs); in am33xx_clkdm_deny_idle()
319 static int am33xx_clkdm_clk_enable(struct clockdomain *clkdm) in am33xx_clkdm_clk_enable() argument
321 if (clkdm->flags & CLKDM_CAN_FORCE_WAKEUP) in am33xx_clkdm_clk_enable()
[all …]
Dcm3xxx.c179 static int omap3xxx_clkdm_clear_all_sleepdeps(struct clockdomain *clkdm) in omap3xxx_clkdm_clear_all_sleepdeps() argument
184 for (cd = clkdm->sleepdep_srcs; cd && cd->clkdm_name; cd++) { in omap3xxx_clkdm_clear_all_sleepdeps()
185 if (!cd->clkdm) in omap3xxx_clkdm_clear_all_sleepdeps()
188 mask |= 1 << cd->clkdm->dep_bit; in omap3xxx_clkdm_clear_all_sleepdeps()
191 omap2_cm_clear_mod_reg_bits(mask, clkdm->pwrdm.ptr->prcm_offs, in omap3xxx_clkdm_clear_all_sleepdeps()
196 static int omap3xxx_clkdm_sleep(struct clockdomain *clkdm) in omap3xxx_clkdm_sleep() argument
198 omap3xxx_cm_clkdm_force_sleep(clkdm->pwrdm.ptr->prcm_offs, in omap3xxx_clkdm_sleep()
199 clkdm->clktrctrl_mask); in omap3xxx_clkdm_sleep()
203 static int omap3xxx_clkdm_wakeup(struct clockdomain *clkdm) in omap3xxx_clkdm_wakeup() argument
205 omap3xxx_cm_clkdm_force_wakeup(clkdm->pwrdm.ptr->prcm_offs, in omap3xxx_clkdm_wakeup()
[all …]
Dcm2xxx.c274 static void omap2xxx_clkdm_allow_idle(struct clockdomain *clkdm) in omap2xxx_clkdm_allow_idle() argument
276 omap2xxx_cm_clkdm_enable_hwsup(clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_allow_idle()
277 clkdm->clktrctrl_mask); in omap2xxx_clkdm_allow_idle()
280 static void omap2xxx_clkdm_deny_idle(struct clockdomain *clkdm) in omap2xxx_clkdm_deny_idle() argument
282 omap2xxx_cm_clkdm_disable_hwsup(clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_deny_idle()
283 clkdm->clktrctrl_mask); in omap2xxx_clkdm_deny_idle()
286 static int omap2xxx_clkdm_clk_enable(struct clockdomain *clkdm) in omap2xxx_clkdm_clk_enable() argument
290 if (!clkdm->clktrctrl_mask) in omap2xxx_clkdm_clk_enable()
293 hwsup = omap2xxx_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_clk_enable()
294 clkdm->clktrctrl_mask); in omap2xxx_clkdm_clk_enable()
[all …]
Domap_hwmod.c705 if (oh->clkdm) { in _get_clkdm()
706 return oh->clkdm; in _get_clkdm()
711 return clk->clkdm; in _get_clkdm()
731 struct clockdomain *clkdm, *init_clkdm; in _add_initiator_dep() local
733 clkdm = _get_clkdm(oh); in _add_initiator_dep()
736 if (!clkdm || !init_clkdm) in _add_initiator_dep()
739 if (clkdm && clkdm->flags & CLKDM_NO_AUTODEPS) in _add_initiator_dep()
742 return clkdm_add_sleepdep(clkdm, init_clkdm); in _add_initiator_dep()
760 struct clockdomain *clkdm, *init_clkdm; in _del_initiator_dep() local
762 clkdm = _get_clkdm(oh); in _del_initiator_dep()
[all …]
Dpm.c111 int __init omap_pm_clkdms_setup(struct clockdomain *clkdm, void *unused) in omap_pm_clkdms_setup() argument
114 if ((clkdm->flags & CLKDM_CAN_ENABLE_AUTO) && in omap_pm_clkdms_setup()
115 !(clkdm->flags & CLKDM_MISSING_IDLE_REPORTING)) in omap_pm_clkdms_setup()
116 clkdm_allow_idle(clkdm); in omap_pm_clkdms_setup()
117 else if (clkdm->flags & CLKDM_CAN_FORCE_SLEEP && in omap_pm_clkdms_setup()
118 clkdm->usecount == 0) in omap_pm_clkdms_setup()
119 clkdm_sleep(clkdm); in omap_pm_clkdms_setup()
Dpm-debug.c77 static int clkdm_dbg_show_counter(struct clockdomain *clkdm, void *user) in clkdm_dbg_show_counter() argument
81 if (strcmp(clkdm->name, "emu_clkdm") == 0 || in clkdm_dbg_show_counter()
82 strcmp(clkdm->name, "wkup_clkdm") == 0 || in clkdm_dbg_show_counter()
83 strncmp(clkdm->name, "dpll", 4) == 0) in clkdm_dbg_show_counter()
86 seq_printf(s, "%s->%s (%d)\n", clkdm->name, clkdm->pwrdm.ptr->name, in clkdm_dbg_show_counter()
87 clkdm->usecount); in clkdm_dbg_show_counter()
Dclock.c96 struct clockdomain *clkdm; in omap2_init_clk_clkdm() local
104 clkdm = clkdm_lookup(clk->clkdm_name); in omap2_init_clk_clkdm()
105 if (clkdm) { in omap2_init_clk_clkdm()
108 clk->clkdm = clkdm; in omap2_init_clk_clkdm()
Dprm2xxx_3xxx.c222 int omap2_clkdm_clear_all_wkdeps(struct clockdomain *clkdm) in omap2_clkdm_clear_all_wkdeps() argument
227 for (cd = clkdm->wkdep_srcs; cd && cd->clkdm_name; cd++) { in omap2_clkdm_clear_all_wkdeps()
228 if (!cd->clkdm) in omap2_clkdm_clear_all_wkdeps()
232 mask |= 1 << cd->clkdm->dep_bit; in omap2_clkdm_clear_all_wkdeps()
236 omap2_prm_clear_mod_reg_bits(mask, clkdm->pwrdm.ptr->prcm_offs, in omap2_clkdm_clear_all_wkdeps()
Dprm2xxx.c136 int omap2xxx_clkdm_sleep(struct clockdomain *clkdm) in omap2xxx_clkdm_sleep() argument
139 clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_sleep()
144 int omap2xxx_clkdm_wakeup(struct clockdomain *clkdm) in omap2xxx_clkdm_wakeup() argument
147 clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_wakeup()
Dclockdomains3xxx_data.c430 .clkdm = { .name = "mpu_clkdm" },
433 .clkdm = { .name = "iva2_clkdm" },
436 .clkdm = { .name = NULL },
442 .clkdm = { .name = "mpu_clkdm" },
445 .clkdm = { .name = NULL },
Dprm2xxx.h124 extern int omap2xxx_clkdm_sleep(struct clockdomain *clkdm);
125 extern int omap2xxx_clkdm_wakeup(struct clockdomain *clkdm);
Dpowerdomain.c447 int pwrdm_add_clkdm(struct powerdomain *pwrdm, struct clockdomain *clkdm) in pwrdm_add_clkdm() argument
452 if (!pwrdm || !clkdm) in pwrdm_add_clkdm()
456 pwrdm->name, clkdm->name); in pwrdm_add_clkdm()
462 if (pwrdm->pwrdm_clkdms[i] == clkdm) { in pwrdm_add_clkdm()
471 pwrdm->name, clkdm->name); in pwrdm_add_clkdm()
477 pwrdm->pwrdm_clkdms[i] = clkdm; in pwrdm_add_clkdm()
Dpm.h36 extern int omap_pm_clkdms_setup(struct clockdomain *clkdm, void *unused);
Dprm2xxx_3xxx.h128 extern int omap2_clkdm_clear_all_wkdeps(struct clockdomain *clkdm);
Dpowerdomain.h214 int pwrdm_add_clkdm(struct powerdomain *pwrdm, struct clockdomain *clkdm);
Domap_hwmod.h686 struct clockdomain *clkdm; member
/linux-4.4.14/drivers/clk/ti/
Dclkt_dflt.c214 if (clkdm_control && clk->clkdm) { in omap2_dflt_clk_enable()
215 ret = ti_clk_ll_ops->clkdm_clk_enable(clk->clkdm, hw->clk); in omap2_dflt_clk_enable()
247 if (clkdm_control && clk->clkdm) in omap2_dflt_clk_enable()
248 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in omap2_dflt_clk_enable()
286 clk->clkdm) in omap2_dflt_clk_disable()
287 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in omap2_dflt_clk_disable()
Dclockdomain.c49 if (unlikely(!clk->clkdm)) { in omap2_clkops_enable_clkdm()
65 ret = ti_clk_ll_ops->clkdm_clk_enable(clk->clkdm, hw->clk); in omap2_clkops_enable_clkdm()
87 if (unlikely(!clk->clkdm)) { in omap2_clkops_disable_clkdm()
103 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in omap2_clkops_disable_clkdm()
Ddpll3xxx.c427 if (clk->clkdm) { in omap3_noncore_dpll_enable()
428 r = ti_clk_ll_ops->clkdm_clk_enable(clk->clkdm, hw->clk); in omap3_noncore_dpll_enable()
463 if (clk->clkdm) in omap3_noncore_dpll_disable()
464 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in omap3_noncore_dpll_disable()
/linux-4.4.14/Documentation/devicetree/bindings/clock/ti/
Dgate.txt23 "ti,clkdm-gate-clock" - clockdomain gate clock, which derives its functional
36 ti,clkdm-gate-clock type
40 ti,clkdm-gate-clock type
79 compatible = "ti,clkdm-gate-clock";
/linux-4.4.14/include/linux/clk/
Dti.h150 struct clockdomain *clkdm; member
229 int (*clkdm_clk_enable)(struct clockdomain *clkdm, struct clk *clk);
230 int (*clkdm_clk_disable)(struct clockdomain *clkdm,
/linux-4.4.14/arch/arm/boot/dts/
Domap44xx-clocks.dtsi742 compatible = "ti,clkdm-gate-clock";
Domap3xxx-clocks.dtsi1528 compatible = "ti,clkdm-gate-clock";