Lines Matching refs:pll
428 struct st_clk_quadfs_pll *pll = to_quadfs_pll(hw); in quadfs_pll_enable() local
431 if (pll->lock) in quadfs_pll_enable()
432 spin_lock_irqsave(pll->lock, flags); in quadfs_pll_enable()
437 if (pll->data->reset_present) in quadfs_pll_enable()
438 CLKGEN_WRITE(pll, nreset, 1); in quadfs_pll_enable()
443 if (pll->data->bwfilter_present) in quadfs_pll_enable()
444 CLKGEN_WRITE(pll, ref_bw, PLL_BW_GOODREF); in quadfs_pll_enable()
447 CLKGEN_WRITE(pll, ndiv, pll->ndiv); in quadfs_pll_enable()
452 CLKGEN_WRITE(pll, npda, !pll->data->powerup_polarity); in quadfs_pll_enable()
454 if (pll->lock) in quadfs_pll_enable()
455 spin_unlock_irqrestore(pll->lock, flags); in quadfs_pll_enable()
457 if (pll->data->lockstatus_present) in quadfs_pll_enable()
458 while (!CLKGEN_READ(pll, lock_status)) { in quadfs_pll_enable()
469 struct st_clk_quadfs_pll *pll = to_quadfs_pll(hw); in quadfs_pll_disable() local
472 if (pll->lock) in quadfs_pll_disable()
473 spin_lock_irqsave(pll->lock, flags); in quadfs_pll_disable()
479 CLKGEN_WRITE(pll, npda, pll->data->powerup_polarity); in quadfs_pll_disable()
481 if (pll->data->reset_present) in quadfs_pll_disable()
482 CLKGEN_WRITE(pll, nreset, 0); in quadfs_pll_disable()
484 if (pll->lock) in quadfs_pll_disable()
485 spin_unlock_irqrestore(pll->lock, flags); in quadfs_pll_disable()
490 struct st_clk_quadfs_pll *pll = to_quadfs_pll(hw); in quadfs_pll_is_enabled() local
491 u32 npda = CLKGEN_READ(pll, npda); in quadfs_pll_is_enabled()
493 return pll->data->powerup_polarity ? !npda : !!npda; in quadfs_pll_is_enabled()
509 struct st_clk_quadfs_pll *pll = to_quadfs_pll(hw); in quadfs_pll_fs660c32_recalc_rate() local
513 params.ndiv = CLKGEN_READ(pll, ndiv); in quadfs_pll_fs660c32_recalc_rate()
518 pll->ndiv = params.ndiv; in quadfs_pll_fs660c32_recalc_rate()
572 struct st_clk_quadfs_pll *pll = to_quadfs_pll(hw); in quadfs_pll_fs660c32_set_rate() local
590 pll->ndiv = params.ndiv; in quadfs_pll_fs660c32_set_rate()
592 if (pll->lock) in quadfs_pll_fs660c32_set_rate()
593 spin_lock_irqsave(pll->lock, flags); in quadfs_pll_fs660c32_set_rate()
595 CLKGEN_WRITE(pll, ndiv, pll->ndiv); in quadfs_pll_fs660c32_set_rate()
597 if (pll->lock) in quadfs_pll_fs660c32_set_rate()
598 spin_unlock_irqrestore(pll->lock, flags); in quadfs_pll_fs660c32_set_rate()
623 struct st_clk_quadfs_pll *pll; in st_clk_register_quadfs_pll() local
633 pll = kzalloc(sizeof(*pll), GFP_KERNEL); in st_clk_register_quadfs_pll()
634 if (!pll) in st_clk_register_quadfs_pll()
643 pll->data = quadfs; in st_clk_register_quadfs_pll()
644 pll->regs_base = reg; in st_clk_register_quadfs_pll()
645 pll->lock = lock; in st_clk_register_quadfs_pll()
646 pll->hw.init = &init; in st_clk_register_quadfs_pll()
648 clk = clk_register(NULL, &pll->hw); in st_clk_register_quadfs_pll()
651 kfree(pll); in st_clk_register_quadfs_pll()