Lines Matching refs:pll_id

23 static bool is_valid_pll(struct uniphier_aio_chip *chip, int pll_id)  in is_valid_pll()  argument
27 if (pll_id < 0 || chip->num_plls <= pll_id) { in is_valid_pll()
28 dev_err(dev, "PLL(%d) is not supported\n", pll_id); in is_valid_pll()
32 return chip->plls[pll_id].enable; in is_valid_pll()
128 static int find_divider(struct uniphier_aio *aio, int pll_id, unsigned int freq) in find_divider() argument
135 if (!is_valid_pll(aio->chip, pll_id)) in find_divider()
138 pll = &aio->chip->plls[pll_id]; in find_divider()
152 int pll_id, div_id; in uniphier_aio_set_sysclk() local
158 pll_id = AUD_PLL_A1; in uniphier_aio_set_sysclk()
161 pll_id = AUD_PLL_F1; in uniphier_aio_set_sysclk()
164 pll_id = AUD_PLL_A2; in uniphier_aio_set_sysclk()
167 pll_id = AUD_PLL_F2; in uniphier_aio_set_sysclk()
170 pll_id = AUD_PLL_A1; in uniphier_aio_set_sysclk()
174 pll_id = AUD_PLL_F1; in uniphier_aio_set_sysclk()
178 pll_id = AUD_PLL_APLL; in uniphier_aio_set_sysclk()
181 pll_id = AUD_PLL_RX0; in uniphier_aio_set_sysclk()
184 pll_id = AUD_PLL_USB0; in uniphier_aio_set_sysclk()
187 pll_id = AUD_PLL_HSC0; in uniphier_aio_set_sysclk()
195 for (pll_id = 0; pll_id < aio->chip->num_plls; pll_id++) { in uniphier_aio_set_sysclk()
196 div_id = find_divider(aio, pll_id, freq); in uniphier_aio_set_sysclk()
202 if (pll_id == aio->chip->num_plls) { in uniphier_aio_set_sysclk()
210 aio->pll_out = pll_id; in uniphier_aio_set_sysclk()
212 aio->pll_in = pll_id; in uniphier_aio_set_sysclk()
217 static int uniphier_aio_set_pll(struct snd_soc_dai *dai, int pll_id, in uniphier_aio_set_pll() argument
224 if (!is_valid_pll(aio->chip, pll_id)) in uniphier_aio_set_pll()
227 ret = aio_chip_set_pll(aio->chip, pll_id, freq_out); in uniphier_aio_set_pll()