Lines Matching full:pclk

52  * @pclk: PIT64B's peripheral clock
58 struct clk *pclk; member
137 clk_disable_unprepare(timer->pclk); in mchp_pit64b_suspend()
142 clk_prepare_enable(timer->pclk); in mchp_pit64b_resume()
253 * PIT64B timer may be fed by gclk or pclk. When gclk is used its rate has to
254 * be at least 3 times lower that pclk's rate. pclk rate is fixed, gclk rate
255 * could be changed via clock APIs. The chosen clock (pclk or gclk) could be
260 * requested rate. If PCLK/GCLK < 3 (condition requested by PIT64B hardware)
261 * then the function falls back on using PCLK as clock source for PIT64B timer
272 * | |-->pclk -->|-->| | +---------+ +-----+ |
279 * - gclk rate <= pclk rate/3
281 * - pclk rate is fixed (cannot be requested from PMC)
290 pclk_rate = clk_get_rate(timer->pclk); in mchp_pit64b_init_mode()
299 goto pclk; in mchp_pit64b_init_mode()
302 goto pclk; in mchp_pit64b_init_mode()
314 pclk: in mchp_pit64b_init_mode()
315 /* Check if requested rate could be obtained using PCLK. */ in mchp_pit64b_init_mode()
320 /* Use PCLK. */ in mchp_pit64b_init_mode()
332 timer->mode & MCHP_PIT64B_MR_SGCLK ? "gclk" : "pclk", best_pres, in mchp_pit64b_init_mode()
355 cs->timer.pclk = timer->pclk; in mchp_pit64b_init_clksrc()
395 ce->timer.pclk = timer->pclk; in mchp_pit64b_init_clkevt()
430 timer.pclk = of_clk_get_by_name(node, "pclk"); in mchp_pit64b_dt_init_timer()
431 if (IS_ERR(timer.pclk)) in mchp_pit64b_dt_init_timer()
432 return PTR_ERR(timer.pclk); in mchp_pit64b_dt_init_timer()
458 clk_rate = clk_get_rate(timer.pclk); in mchp_pit64b_dt_init_timer()