Lines Matching refs:rate

32 				struct samsung_clk_pll *pll, unsigned long rate)  in samsung_get_pll_settings()  argument
38 if (rate == rate_table[i].rate) in samsung_get_pll_settings()
54 if (drate >= rate_table[i].rate) in samsung_pll_round_rate()
55 return rate_table[i].rate; in samsung_pll_round_rate()
59 return rate_table[i - 1].rate; in samsung_pll_round_rate()
162 const struct samsung_pll_rate_table *rate, u32 pll_con) in samsung_pll35xx_mp_change() argument
169 return (rate->mdiv != old_mdiv || rate->pdiv != old_pdiv); in samsung_pll35xx_mp_change()
176 const struct samsung_pll_rate_table *rate; in samsung_pll35xx_set_rate() local
180 rate = samsung_get_pll_settings(pll, drate); in samsung_pll35xx_set_rate()
181 if (!rate) { in samsung_pll35xx_set_rate()
189 if (!(samsung_pll35xx_mp_change(rate, tmp))) { in samsung_pll35xx_set_rate()
192 tmp |= rate->sdiv << PLL35XX_SDIV_SHIFT; in samsung_pll35xx_set_rate()
199 __raw_writel(rate->pdiv * PLL35XX_LOCK_FACTOR, in samsung_pll35xx_set_rate()
206 tmp |= (rate->mdiv << PLL35XX_MDIV_SHIFT) | in samsung_pll35xx_set_rate()
207 (rate->pdiv << PLL35XX_PDIV_SHIFT) | in samsung_pll35xx_set_rate()
208 (rate->sdiv << PLL35XX_SDIV_SHIFT); in samsung_pll35xx_set_rate()
269 const struct samsung_pll_rate_table *rate, u32 pll_con0, u32 pll_con1) in samsung_pll36xx_mpk_change() argument
277 return (rate->mdiv != old_mdiv || rate->pdiv != old_pdiv || in samsung_pll36xx_mpk_change()
278 rate->kdiv != old_kdiv); in samsung_pll36xx_mpk_change()
286 const struct samsung_pll_rate_table *rate; in samsung_pll36xx_set_rate() local
288 rate = samsung_get_pll_settings(pll, drate); in samsung_pll36xx_set_rate()
289 if (!rate) { in samsung_pll36xx_set_rate()
298 if (!(samsung_pll36xx_mpk_change(rate, pll_con0, pll_con1))) { in samsung_pll36xx_set_rate()
301 pll_con0 |= (rate->sdiv << PLL36XX_SDIV_SHIFT); in samsung_pll36xx_set_rate()
308 __raw_writel(rate->pdiv * PLL36XX_LOCK_FACTOR, pll->lock_reg); in samsung_pll36xx_set_rate()
314 pll_con0 |= (rate->mdiv << PLL36XX_MDIV_SHIFT) | in samsung_pll36xx_set_rate()
315 (rate->pdiv << PLL36XX_PDIV_SHIFT) | in samsung_pll36xx_set_rate()
316 (rate->sdiv << PLL36XX_SDIV_SHIFT); in samsung_pll36xx_set_rate()
320 pll_con1 |= rate->kdiv << PLL36XX_KDIV_SHIFT; in samsung_pll36xx_set_rate()
382 const struct samsung_pll_rate_table *rate) in samsung_pll45xx_mp_change() argument
390 return (old_mdiv != rate->mdiv || old_pdiv != rate->pdiv in samsung_pll45xx_mp_change()
391 || old_afc != rate->afc); in samsung_pll45xx_mp_change()
398 const struct samsung_pll_rate_table *rate; in samsung_pll45xx_set_rate() local
403 rate = samsung_get_pll_settings(pll, drate); in samsung_pll45xx_set_rate()
404 if (!rate) { in samsung_pll45xx_set_rate()
413 if (!(samsung_pll45xx_mp_change(con0, con1, rate))) { in samsung_pll45xx_set_rate()
416 con0 |= rate->sdiv << PLL45XX_SDIV_SHIFT; in samsung_pll45xx_set_rate()
426 con0 |= (rate->mdiv << PLL45XX_MDIV_SHIFT) | in samsung_pll45xx_set_rate()
427 (rate->pdiv << PLL45XX_PDIV_SHIFT) | in samsung_pll45xx_set_rate()
428 (rate->sdiv << PLL45XX_SDIV_SHIFT); in samsung_pll45xx_set_rate()
433 con1 |= (rate->afc << PLL45XX_AFC_SHIFT); in samsung_pll45xx_set_rate()
438 __raw_writel(rate->pdiv * PLL4502_LOCK_FACTOR, pll->lock_reg); in samsung_pll45xx_set_rate()
441 __raw_writel(rate->pdiv * PLL4508_LOCK_FACTOR, pll->lock_reg); in samsung_pll45xx_set_rate()
533 const struct samsung_pll_rate_table *rate) in samsung_pll46xx_mpk_change() argument
541 return (old_mdiv != rate->mdiv || old_pdiv != rate->pdiv in samsung_pll46xx_mpk_change()
542 || old_kdiv != rate->kdiv); in samsung_pll46xx_mpk_change()
549 const struct samsung_pll_rate_table *rate; in samsung_pll46xx_set_rate() local
554 rate = samsung_get_pll_settings(pll, drate); in samsung_pll46xx_set_rate()
555 if (!rate) { in samsung_pll46xx_set_rate()
564 if (!(samsung_pll46xx_mpk_change(con0, con1, rate))) { in samsung_pll46xx_set_rate()
567 con0 |= rate->sdiv << PLL46XX_SDIV_SHIFT; in samsung_pll46xx_set_rate()
574 lock = rate->pdiv * PLL46XX_LOCK_FACTOR; in samsung_pll46xx_set_rate()
589 con0 |= rate->vsel << PLL46XX_VSEL_SHIFT; in samsung_pll46xx_set_rate()
592 con0 |= (rate->mdiv << PLL46XX_MDIV_SHIFT) | in samsung_pll46xx_set_rate()
593 (rate->pdiv << PLL46XX_PDIV_SHIFT) | in samsung_pll46xx_set_rate()
594 (rate->sdiv << PLL46XX_SDIV_SHIFT); in samsung_pll46xx_set_rate()
601 con1 |= (rate->kdiv << PLL46XX_KDIV_SHIFT) | in samsung_pll46xx_set_rate()
602 (rate->mfr << PLL46XX_MFR_SHIFT) | in samsung_pll46xx_set_rate()
603 (rate->mrr << PLL46XX_MRR_SHIFT); in samsung_pll46xx_set_rate()
768 const struct samsung_pll_rate_table *rate; in samsung_s3c2410_pll_set_rate() local
772 rate = samsung_get_pll_settings(pll, drate); in samsung_s3c2410_pll_set_rate()
773 if (!rate) { in samsung_s3c2410_pll_set_rate()
785 tmp |= (rate->mdiv << PLLS3C2410_MDIV_SHIFT) | in samsung_s3c2410_pll_set_rate()
786 (rate->pdiv << PLLS3C2410_PDIV_SHIFT) | in samsung_s3c2410_pll_set_rate()
787 (rate->sdiv << PLLS3C2410_SDIV_SHIFT); in samsung_s3c2410_pll_set_rate()
1009 const struct samsung_pll_rate_table *rate; in samsung_pll2550xx_set_rate() local
1013 rate = samsung_get_pll_settings(pll, drate); in samsung_pll2550xx_set_rate()
1014 if (!rate) { in samsung_pll2550xx_set_rate()
1022 if (!(samsung_pll2550xx_mp_change(rate->mdiv, rate->pdiv, tmp))) { in samsung_pll2550xx_set_rate()
1025 tmp |= rate->sdiv << PLL2550XX_S_SHIFT; in samsung_pll2550xx_set_rate()
1032 __raw_writel(rate->pdiv * PLL2550XX_LOCK_FACTOR, pll->lock_reg); in samsung_pll2550xx_set_rate()
1038 tmp |= (rate->mdiv << PLL2550XX_M_SHIFT) | in samsung_pll2550xx_set_rate()
1039 (rate->pdiv << PLL2550XX_P_SHIFT) | in samsung_pll2550xx_set_rate()
1040 (rate->sdiv << PLL2550XX_S_SHIFT); in samsung_pll2550xx_set_rate()
1109 const struct samsung_pll_rate_table *rate; in samsung_pll2650xx_set_rate() local
1111 rate = samsung_get_pll_settings(pll, drate); in samsung_pll2650xx_set_rate()
1112 if (!rate) { in samsung_pll2650xx_set_rate()
1125 pll_con0 |= rate->mdiv << PLL2650XX_MDIV_SHIFT; in samsung_pll2650xx_set_rate()
1126 pll_con0 |= rate->pdiv << PLL2650XX_PDIV_SHIFT; in samsung_pll2650xx_set_rate()
1127 pll_con0 |= rate->sdiv << PLL2650XX_SDIV_SHIFT; in samsung_pll2650xx_set_rate()
1132 pll_con2 |= ((~(rate->kdiv) + 1) & PLL2650XX_KDIV_MASK) in samsung_pll2650xx_set_rate()
1136 __raw_writel(PLL2650XX_LOCK_FACTOR * rate->pdiv, pll->lock_reg); in samsung_pll2650xx_set_rate()
1181 for (len = 0; pll_clk->rate_table[len].rate != 0; ) in _samsung_clk_register_pll()