Lines Matching refs:pll

292 	struct pll_data *pll;  in clk_sysclk_recalc()  local
308 pll = clk->parent->pll_data; in clk_sysclk_recalc()
312 rate = pll->input_rate; in clk_sysclk_recalc()
317 v = __raw_readl(pll->base + clk->div_reg); in clk_sysclk_recalc()
319 plldiv = (v & pll->div_ratio_mask) + 1; in clk_sysclk_recalc()
330 struct pll_data *pll; in davinci_set_sysclk_rate() local
350 pll = clk->parent->pll_data; in davinci_set_sysclk_rate()
356 input = pll->input_rate; in davinci_set_sysclk_rate()
376 if (ratio > pll->div_ratio_mask) in davinci_set_sysclk_rate()
380 v = __raw_readl(pll->base + PLLSTAT); in davinci_set_sysclk_rate()
383 v = __raw_readl(pll->base + clk->div_reg); in davinci_set_sysclk_rate()
384 v &= ~pll->div_ratio_mask; in davinci_set_sysclk_rate()
386 __raw_writel(v, pll->base + clk->div_reg); in davinci_set_sysclk_rate()
388 v = __raw_readl(pll->base + PLLCMD); in davinci_set_sysclk_rate()
390 __raw_writel(v, pll->base + PLLCMD); in davinci_set_sysclk_rate()
393 v = __raw_readl(pll->base + PLLSTAT); in davinci_set_sysclk_rate()
418 struct pll_data *pll = clk->pll_data; in clk_pllclk_recalc() local
421 ctrl = __raw_readl(pll->base + PLLCTL); in clk_pllclk_recalc()
422 rate = pll->input_rate = clk->parent->rate; in clk_pllclk_recalc()
426 mult = __raw_readl(pll->base + PLLM); in clk_pllclk_recalc()
434 if (pll->flags & PLL_HAS_PREDIV) { in clk_pllclk_recalc()
435 prediv = __raw_readl(pll->base + PREDIV); in clk_pllclk_recalc()
437 prediv = (prediv & pll->div_ratio_mask) + 1; in clk_pllclk_recalc()
443 if (cpu_is_davinci_dm355() && pll->num == 1) in clk_pllclk_recalc()
446 if (pll->flags & PLL_HAS_POSTDIV) { in clk_pllclk_recalc()
447 postdiv = __raw_readl(pll->base + POSTDIV); in clk_pllclk_recalc()
449 postdiv = (postdiv & pll->div_ratio_mask) + 1; in clk_pllclk_recalc()
461 pll->num, clk->parent->rate / 1000000); in clk_pllclk_recalc()
485 int davinci_set_pllrate(struct pll_data *pll, unsigned int prediv, in davinci_set_pllrate() argument
492 if (pll->base == NULL) in davinci_set_pllrate()
514 ctrl = __raw_readl(pll->base + PLLCTL); in davinci_set_pllrate()
518 __raw_writel(ctrl, pll->base + PLLCTL); in davinci_set_pllrate()
524 __raw_writel(ctrl, pll->base + PLLCTL); in davinci_set_pllrate()
526 if (pll->flags & PLL_HAS_PREDIV) in davinci_set_pllrate()
527 __raw_writel(prediv, pll->base + PREDIV); in davinci_set_pllrate()
529 __raw_writel(mult, pll->base + PLLM); in davinci_set_pllrate()
531 if (pll->flags & PLL_HAS_POSTDIV) in davinci_set_pllrate()
532 __raw_writel(postdiv, pll->base + POSTDIV); in davinci_set_pllrate()
538 __raw_writel(ctrl, pll->base + PLLCTL); in davinci_set_pllrate()
544 __raw_writel(ctrl, pll->base + PLLCTL); in davinci_set_pllrate()
609 struct pll_data *pll = clk->pll_data; in davinci_clk_init() local
611 if (!pll->div_ratio_mask) in davinci_clk_init()
612 pll->div_ratio_mask = PLLDIV_RATIO_MASK; in davinci_clk_init()
614 if (pll->phys_base && !pll->base) { in davinci_clk_init()
615 pll->base = ioremap(pll->phys_base, SZ_4K); in davinci_clk_init()
616 WARN_ON(!pll->base); in davinci_clk_init()