• Home
  • Raw
  • Download

Lines Matching refs:pll

90 		struct clk_pll14xx *pll, unsigned long rate)  in imx_get_pll_settings()  argument
92 const struct imx_pll14xx_rate_table *rate_table = pll->rate_table; in imx_get_pll_settings()
95 for (i = 0; i < pll->rate_count; i++) in imx_get_pll_settings()
105 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_round_rate() local
106 const struct imx_pll14xx_rate_table *rate_table = pll->rate_table; in clk_pll14xx_round_rate()
110 for (i = 0; i < pll->rate_count; i++) in clk_pll14xx_round_rate()
121 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1416x_recalc_rate() local
125 pll_div = readl_relaxed(pll->base + 4); in clk_pll1416x_recalc_rate()
139 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1443x_recalc_rate() local
144 pll_div_ctl0 = readl_relaxed(pll->base + 4); in clk_pll1443x_recalc_rate()
145 pll_div_ctl1 = readl_relaxed(pll->base + 8); in clk_pll1443x_recalc_rate()
171 static int clk_pll14xx_wait_lock(struct clk_pll14xx *pll) in clk_pll14xx_wait_lock() argument
175 return readl_poll_timeout(pll->base, val, val & LOCK_STATUS, 0, in clk_pll14xx_wait_lock()
182 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1416x_set_rate() local
187 rate = imx_get_pll_settings(pll, drate); in clk_pll1416x_set_rate()
194 tmp = readl_relaxed(pll->base + 4); in clk_pll1416x_set_rate()
199 writel_relaxed(tmp, pll->base + 4); in clk_pll1416x_set_rate()
205 tmp = readl_relaxed(pll->base); in clk_pll1416x_set_rate()
207 writel_relaxed(tmp, pll->base); in clk_pll1416x_set_rate()
211 writel_relaxed(tmp, pll->base); in clk_pll1416x_set_rate()
215 writel(tmp, pll->base); in clk_pll1416x_set_rate()
219 writel_relaxed(div_val, pll->base + 0x4); in clk_pll1416x_set_rate()
231 writel_relaxed(tmp, pll->base); in clk_pll1416x_set_rate()
234 ret = clk_pll14xx_wait_lock(pll); in clk_pll1416x_set_rate()
240 writel_relaxed(tmp, pll->base); in clk_pll1416x_set_rate()
248 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll1443x_set_rate() local
253 rate = imx_get_pll_settings(pll, drate); in clk_pll1443x_set_rate()
260 tmp = readl_relaxed(pll->base + 4); in clk_pll1443x_set_rate()
265 writel_relaxed(tmp, pll->base + 4); in clk_pll1443x_set_rate()
268 writel_relaxed(tmp, pll->base + 8); in clk_pll1443x_set_rate()
274 tmp = readl_relaxed(pll->base); in clk_pll1443x_set_rate()
276 writel_relaxed(tmp, pll->base); in clk_pll1443x_set_rate()
280 writel_relaxed(tmp, pll->base); in clk_pll1443x_set_rate()
284 writel_relaxed(div_val, pll->base + 0x4); in clk_pll1443x_set_rate()
285 writel_relaxed(rate->kdiv << KDIV_SHIFT, pll->base + 0x8); in clk_pll1443x_set_rate()
297 writel_relaxed(tmp, pll->base); in clk_pll1443x_set_rate()
300 ret = clk_pll14xx_wait_lock(pll); in clk_pll1443x_set_rate()
306 writel_relaxed(tmp, pll->base); in clk_pll1443x_set_rate()
313 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_prepare() local
321 val = readl_relaxed(pll->base + GNRL_CTL); in clk_pll14xx_prepare()
325 writel_relaxed(val, pll->base + GNRL_CTL); in clk_pll14xx_prepare()
327 writel_relaxed(val, pll->base + GNRL_CTL); in clk_pll14xx_prepare()
329 ret = clk_pll14xx_wait_lock(pll); in clk_pll14xx_prepare()
334 writel_relaxed(val, pll->base + GNRL_CTL); in clk_pll14xx_prepare()
341 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_is_prepared() local
344 val = readl_relaxed(pll->base + GNRL_CTL); in clk_pll14xx_is_prepared()
351 struct clk_pll14xx *pll = to_clk_pll14xx(hw); in clk_pll14xx_unprepare() local
358 val = readl_relaxed(pll->base + GNRL_CTL); in clk_pll14xx_unprepare()
360 writel_relaxed(val, pll->base + GNRL_CTL); in clk_pll14xx_unprepare()
389 struct clk_pll14xx *pll; in imx_dev_clk_hw_pll14xx() local
395 pll = kzalloc(sizeof(*pll), GFP_KERNEL); in imx_dev_clk_hw_pll14xx()
396 if (!pll) in imx_dev_clk_hw_pll14xx()
417 kfree(pll); in imx_dev_clk_hw_pll14xx()
421 pll->base = base; in imx_dev_clk_hw_pll14xx()
422 pll->hw.init = &init; in imx_dev_clk_hw_pll14xx()
423 pll->type = pll_clk->type; in imx_dev_clk_hw_pll14xx()
424 pll->rate_table = pll_clk->rate_table; in imx_dev_clk_hw_pll14xx()
425 pll->rate_count = pll_clk->rate_count; in imx_dev_clk_hw_pll14xx()
427 val = readl_relaxed(pll->base + GNRL_CTL); in imx_dev_clk_hw_pll14xx()
429 writel_relaxed(val, pll->base + GNRL_CTL); in imx_dev_clk_hw_pll14xx()
431 hw = &pll->hw; in imx_dev_clk_hw_pll14xx()
437 kfree(pll); in imx_dev_clk_hw_pll14xx()