/linux-6.12.1/arch/arm/mach-omap2/ |
D | clockdomain.c | 48 struct clockdomain *clkdm, *temp_clkdm; in _clkdm_lookup() local 53 clkdm = NULL; in _clkdm_lookup() 57 clkdm = temp_clkdm; in _clkdm_lookup() 62 return clkdm; in _clkdm_lookup() 73 static int _clkdm_register(struct clockdomain *clkdm) in _clkdm_register() argument 77 if (!clkdm || !clkdm->name) in _clkdm_register() 80 pwrdm = pwrdm_lookup(clkdm->pwrdm.name); in _clkdm_register() 83 clkdm->name, clkdm->pwrdm.name); in _clkdm_register() 86 clkdm->pwrdm.ptr = pwrdm; in _clkdm_register() 89 if (_clkdm_lookup(clkdm->name)) in _clkdm_register() [all …]
|
D | cminst44xx.c | 380 static int omap4_clkdm_clear_all_wkup_sleep_deps(struct clockdomain *clkdm) in omap4_clkdm_clear_all_wkup_sleep_deps() argument 385 if (!clkdm->prcm_partition) in omap4_clkdm_clear_all_wkup_sleep_deps() 388 for (cd = clkdm->wkdep_srcs; cd && cd->clkdm_name; cd++) { in omap4_clkdm_clear_all_wkup_sleep_deps() 389 if (!cd->clkdm) in omap4_clkdm_clear_all_wkup_sleep_deps() 392 mask |= 1 << cd->clkdm->dep_bit; in omap4_clkdm_clear_all_wkup_sleep_deps() 396 omap4_cminst_clear_inst_reg_bits(mask, clkdm->prcm_partition, in omap4_clkdm_clear_all_wkup_sleep_deps() 397 clkdm->cm_inst, clkdm->clkdm_offs + in omap4_clkdm_clear_all_wkup_sleep_deps() 402 static int omap4_clkdm_sleep(struct clockdomain *clkdm) in omap4_clkdm_sleep() argument 404 if (clkdm->flags & CLKDM_CAN_HWSUP) in omap4_clkdm_sleep() 405 omap4_cminst_clkdm_enable_hwsup(clkdm->prcm_partition, in omap4_clkdm_sleep() [all …]
|
D | clockdomain.h | 72 } clkdm; member 89 struct clockdomain *clkdm; member 167 int (*clkdm_clear_all_wkdeps)(struct clockdomain *clkdm); 171 int (*clkdm_clear_all_sleepdeps)(struct clockdomain *clkdm); 172 int (*clkdm_sleep)(struct clockdomain *clkdm); 173 int (*clkdm_wakeup)(struct clockdomain *clkdm); 174 void (*clkdm_allow_idle)(struct clockdomain *clkdm); 175 void (*clkdm_deny_idle)(struct clockdomain *clkdm); 176 int (*clkdm_clk_enable)(struct clockdomain *clkdm); 177 int (*clkdm_clk_disable)(struct clockdomain *clkdm); [all …]
|
D | cm33xx.c | 297 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 …]
|
D | cm3xxx.c | 172 static int omap3xxx_clkdm_clear_all_sleepdeps(struct clockdomain *clkdm) in omap3xxx_clkdm_clear_all_sleepdeps() argument 177 for (cd = clkdm->sleepdep_srcs; cd && cd->clkdm_name; cd++) { in omap3xxx_clkdm_clear_all_sleepdeps() 178 if (!cd->clkdm) in omap3xxx_clkdm_clear_all_sleepdeps() 181 mask |= 1 << cd->clkdm->dep_bit; in omap3xxx_clkdm_clear_all_sleepdeps() 184 omap2_cm_clear_mod_reg_bits(mask, clkdm->pwrdm.ptr->prcm_offs, in omap3xxx_clkdm_clear_all_sleepdeps() 189 static int omap3xxx_clkdm_sleep(struct clockdomain *clkdm) in omap3xxx_clkdm_sleep() argument 191 omap3xxx_cm_clkdm_force_sleep(clkdm->pwrdm.ptr->prcm_offs, in omap3xxx_clkdm_sleep() 192 clkdm->clktrctrl_mask); in omap3xxx_clkdm_sleep() 196 static int omap3xxx_clkdm_wakeup(struct clockdomain *clkdm) in omap3xxx_clkdm_wakeup() argument 198 omap3xxx_cm_clkdm_force_wakeup(clkdm->pwrdm.ptr->prcm_offs, in omap3xxx_clkdm_wakeup() [all …]
|
D | cm2xxx.c | 171 static void omap2xxx_clkdm_allow_idle(struct clockdomain *clkdm) in omap2xxx_clkdm_allow_idle() argument 173 omap2xxx_cm_clkdm_enable_hwsup(clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_allow_idle() 174 clkdm->clktrctrl_mask); in omap2xxx_clkdm_allow_idle() 177 static void omap2xxx_clkdm_deny_idle(struct clockdomain *clkdm) in omap2xxx_clkdm_deny_idle() argument 179 omap2xxx_cm_clkdm_disable_hwsup(clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_deny_idle() 180 clkdm->clktrctrl_mask); in omap2xxx_clkdm_deny_idle() 183 static int omap2xxx_clkdm_clk_enable(struct clockdomain *clkdm) in omap2xxx_clkdm_clk_enable() argument 187 if (!clkdm->clktrctrl_mask) in omap2xxx_clkdm_clk_enable() 190 hwsup = omap2xxx_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_clk_enable() 191 clkdm->clktrctrl_mask); in omap2xxx_clkdm_clk_enable() [all …]
|
D | omap_hwmod.c | 633 if (oh->clkdm) { in _get_clkdm() 634 return oh->clkdm; in _get_clkdm() 639 return clk->clkdm; in _get_clkdm() 659 struct clockdomain *clkdm, *init_clkdm; in _add_initiator_dep() local 661 clkdm = _get_clkdm(oh); in _add_initiator_dep() 664 if (!clkdm || !init_clkdm) in _add_initiator_dep() 667 if (clkdm && clkdm->flags & CLKDM_NO_AUTODEPS) in _add_initiator_dep() 670 return clkdm_add_sleepdep(clkdm, init_clkdm); in _add_initiator_dep() 688 struct clockdomain *clkdm, *init_clkdm; in _del_initiator_dep() local 690 clkdm = _get_clkdm(oh); in _del_initiator_dep() [all …]
|
D | pdata-quirks.c | 303 struct clockdomain *clkdm = NULL; in ti_sysc_find_one_clockdomain() local 311 clkdm = clkdm_lookup(hwclk->clkdm_name); in ti_sysc_find_one_clockdomain() 313 return clkdm; in ti_sysc_find_one_clockdomain() 335 cookie->clkdm = ti_sysc_find_one_clockdomain(fck); in ti_sysc_clkdm_init() 336 if (cookie->clkdm) in ti_sysc_clkdm_init() 339 cookie->clkdm = ti_sysc_find_one_clockdomain(ick); in ti_sysc_clkdm_init() 340 if (cookie->clkdm) in ti_sysc_clkdm_init() 349 if (cookie->clkdm) in ti_sysc_clkdm_deny_idle() 350 clkdm_deny_idle(cookie->clkdm); in ti_sysc_clkdm_deny_idle() 356 if (cookie->clkdm) in ti_sysc_clkdm_allow_idle() [all …]
|
D | pm-debug.c | 67 static int clkdm_dbg_show_counter(struct clockdomain *clkdm, void *user) in clkdm_dbg_show_counter() argument 71 if (strcmp(clkdm->name, "emu_clkdm") == 0 || in clkdm_dbg_show_counter() 72 strcmp(clkdm->name, "wkup_clkdm") == 0 || in clkdm_dbg_show_counter() 73 strncmp(clkdm->name, "dpll", 4) == 0) in clkdm_dbg_show_counter() 76 seq_printf(s, "%s->%s (%d)\n", clkdm->name, clkdm->pwrdm.ptr->name, in clkdm_dbg_show_counter() 77 clkdm->usecount); in clkdm_dbg_show_counter()
|
D | omap-iommu.c | 57 struct clockdomain *clkdm; in _get_pwrdm() local 90 clkdm = clkdm_lookup(hwclk->clkdm_name); in _get_pwrdm() 91 if (!clkdm) { in _get_pwrdm() 96 pwrdm = clkdm_get_pwrdm(clkdm); in _get_pwrdm() 98 dev_err(dev, "pwrdm not found: %s\n", clkdm->name); in _get_pwrdm()
|
D | prm2xxx_3xxx.c | 219 int omap2_clkdm_clear_all_wkdeps(struct clockdomain *clkdm) in omap2_clkdm_clear_all_wkdeps() argument 224 for (cd = clkdm->wkdep_srcs; cd && cd->clkdm_name; cd++) { in omap2_clkdm_clear_all_wkdeps() 225 if (!cd->clkdm) in omap2_clkdm_clear_all_wkdeps() 229 mask |= 1 << cd->clkdm->dep_bit; in omap2_clkdm_clear_all_wkdeps() 233 omap2_prm_clear_mod_reg_bits(mask, clkdm->pwrdm.ptr->prcm_offs, in omap2_clkdm_clear_all_wkdeps()
|
D | prm2xxx.c | 133 int omap2xxx_clkdm_sleep(struct clockdomain *clkdm) in omap2xxx_clkdm_sleep() argument 136 clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_sleep() 141 int omap2xxx_clkdm_wakeup(struct clockdomain *clkdm) in omap2xxx_clkdm_wakeup() argument 144 clkdm->pwrdm.ptr->prcm_offs, in omap2xxx_clkdm_wakeup()
|
D | clockdomains3xxx_data.c | 431 .clkdm = { .name = "mpu_clkdm" }, 434 .clkdm = { .name = "iva2_clkdm" }, 437 .clkdm = { .name = NULL }, 443 .clkdm = { .name = "mpu_clkdm" }, 446 .clkdm = { .name = NULL },
|
D | pm.c | 67 int omap_pm_clkdms_setup(struct clockdomain *clkdm, void *unused) in omap_pm_clkdms_setup() argument 69 clkdm_allow_idle(clkdm); in omap_pm_clkdms_setup()
|
D | prm2xxx.h | 121 extern int omap2xxx_clkdm_sleep(struct clockdomain *clkdm); 122 extern int omap2xxx_clkdm_wakeup(struct clockdomain *clkdm);
|
D | powerdomain.c | 465 int pwrdm_add_clkdm(struct powerdomain *pwrdm, struct clockdomain *clkdm) in pwrdm_add_clkdm() argument 470 if (!pwrdm || !clkdm) in pwrdm_add_clkdm() 474 pwrdm->name, clkdm->name); in pwrdm_add_clkdm() 480 if (pwrdm->pwrdm_clkdms[i] == clkdm) { in pwrdm_add_clkdm() 489 pwrdm->name, clkdm->name); in pwrdm_add_clkdm() 495 pwrdm->pwrdm_clkdms[i] = clkdm; in pwrdm_add_clkdm()
|
D | pm.h | 33 extern int omap_pm_clkdms_setup(struct clockdomain *clkdm, void *unused);
|
/linux-6.12.1/drivers/clk/ti/ |
D | clockdomain.c | 41 if (unlikely(!clk->clkdm)) { in omap2_clkops_enable_clkdm() 53 ret = ti_clk_ll_ops->clkdm_clk_enable(clk->clkdm, hw->clk); in omap2_clkops_enable_clkdm() 75 if (unlikely(!clk->clkdm)) { in omap2_clkops_disable_clkdm() 87 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in omap2_clkops_disable_clkdm() 101 struct clockdomain *clkdm; in omap2_init_clk_clkdm() local 109 clkdm = ti_clk_ll_ops->clkdm_lookup(clk->clkdm_name); in omap2_init_clk_clkdm() 110 if (clkdm) { in omap2_init_clk_clkdm() 113 clk->clkdm = clkdm; in omap2_init_clk_clkdm()
|
D | clkt_dflt.c | 208 if (clkdm_control && clk->clkdm) { in omap2_dflt_clk_enable() 209 ret = ti_clk_ll_ops->clkdm_clk_enable(clk->clkdm, hw->clk); in omap2_dflt_clk_enable() 259 clk->clkdm) in omap2_dflt_clk_disable() 260 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in omap2_dflt_clk_disable()
|
D | clkctrl.c | 137 if (clk->clkdm) { in _omap4_clkctrl_clk_enable() 138 ret = ti_clk_ll_ops->clkdm_clk_enable(clk->clkdm, hw->clk); in _omap4_clkctrl_clk_enable() 200 if (clk->clkdm) in _omap4_clkctrl_clk_disable() 201 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in _omap4_clkctrl_clk_disable()
|
D | dpll3xxx.c | 533 if (clk->clkdm) { in omap3_noncore_dpll_enable() 534 r = ti_clk_ll_ops->clkdm_clk_enable(clk->clkdm, hw->clk); in omap3_noncore_dpll_enable() 569 if (clk->clkdm) in omap3_noncore_dpll_disable() 570 ti_clk_ll_ops->clkdm_clk_disable(clk->clkdm, hw->clk); in omap3_noncore_dpll_disable()
|
/linux-6.12.1/include/linux/platform_data/ |
D | ti-prm.h | 16 void (*clkdm_deny_idle)(struct clockdomain *clkdm); 17 void (*clkdm_allow_idle)(struct clockdomain *clkdm);
|
/linux-6.12.1/Documentation/devicetree/bindings/clock/ti/ |
D | gate.txt | 21 "ti,clkdm-gate-clock" - clockdomain gate clock, which derives its functional 34 ti,clkdm-gate-clock type 39 ti,clkdm-gate-clock type 78 compatible = "ti,clkdm-gate-clock";
|
/linux-6.12.1/include/linux/clk/ |
D | ti.h | 177 struct clockdomain *clkdm; member 251 int (*clkdm_clk_enable)(struct clockdomain *clkdm, struct clk *clk); 252 int (*clkdm_clk_disable)(struct clockdomain *clkdm,
|
/linux-6.12.1/drivers/pmdomain/ti/ |
D | omap_prm.c | 77 struct clockdomain *clkdm; member 819 if (reset->clkdm) in omap_reset_deassert() 820 pdata->clkdm_deny_idle(reset->clkdm); in omap_reset_deassert() 849 if (reset->clkdm) in omap_reset_deassert() 850 pdata->clkdm_allow_idle(reset->clkdm); in omap_reset_deassert() 917 reset->clkdm = pdata->clkdm_lookup(buf); in omap_prm_reset_init() 918 if (!reset->clkdm) in omap_prm_reset_init()
|