| /sound/aoa/soundbus/i2sbus/ |
| A D | interface.h | 89 # define I2S_SF_MCLKDIV_OTHER(div) (((div/2-1)<<I2S_SF_MCLKDIV_SHIFT)&I2S_SF_MCLKDIV_MASK) argument 90 static inline int i2s_sf_mclkdiv(int div, int *out) in i2s_sf_mclkdiv() argument 94 switch(div) { in i2s_sf_mclkdiv() 100 if (div%2) return -1; in i2s_sf_mclkdiv() 101 d = div/2-1; in i2s_sf_mclkdiv() 104 *out |= I2S_SF_MCLKDIV_OTHER(div); in i2s_sf_mclkdiv() 116 # define I2S_SF_SCLKDIV_OTHER(div) (((div/2-1)<<I2S_SF_SCLKDIV_SHIFT)&I2S_SF_SCLKDIV_MASK) argument 121 switch(div) { in i2s_sf_sclkdiv() 125 if (div%2) return -1; in i2s_sf_sclkdiv() 126 d = div/2-1; in i2s_sf_sclkdiv() [all …]
|
| /sound/soc/codecs/ |
| A D | adau-utils.c | 19 unsigned int div; in adau_calc_pll_cfg() local 25 div = 0; in adau_calc_pll_cfg() 28 div = DIV_ROUND_UP(freq_in, 13500000); in adau_calc_pll_cfg() 29 freq_in /= div; in adau_calc_pll_cfg() 35 div--; in adau_calc_pll_cfg() 40 div = 0; in adau_calc_pll_cfg() 42 if (n > 0xffff || m > 0xffff || div > 3 || r > 8 || r < 2) in adau_calc_pll_cfg() 50 regs[4] = (r << 3) | (div << 1); in adau_calc_pll_cfg()
|
| A D | rl6231.c | 72 static const int div[] = {2, 3, 4, 6, 8, 12}; in rl6231_calc_dmic_clk() local 75 if (rate < 1000000 * div[0]) { in rl6231_calc_dmic_clk() 80 for (i = 0; i < ARRAY_SIZE(div); i++) { in rl6231_calc_dmic_clk() 81 if ((div[i] % 3) == 0) in rl6231_calc_dmic_clk() 84 if (1536000 * div[i] >= rate) in rl6231_calc_dmic_clk() 112 unsigned int max, unsigned int div) in find_best_div() argument 123 while (div % d != 0) in find_best_div() 146 unsigned int red, pll_out, in_t, out_t, div, div_t; in rl6231_pll_calc() local 175 div = find_best_div(freq_in, f_max, div_t); in rl6231_pll_calc() 176 f_in = freq_in / div; in rl6231_pll_calc() [all …]
|
| A D | tlv320aic32x4-clk.c | 303 struct clk_aic32x4 *div = to_clk_aic32x4(hw); in clk_aic32x4_div_prepare() local 305 return regmap_update_bits(div->regmap, div->reg, in clk_aic32x4_div_prepare() 311 struct clk_aic32x4 *div = to_clk_aic32x4(hw); in clk_aic32x4_div_unprepare() local 313 regmap_update_bits(div->regmap, div->reg, in clk_aic32x4_div_unprepare() 320 struct clk_aic32x4 *div = to_clk_aic32x4(hw); in clk_aic32x4_div_set_rate() local 327 return regmap_update_bits(div->regmap, div->reg, in clk_aic32x4_div_set_rate() 347 struct clk_aic32x4 *div = to_clk_aic32x4(hw); in clk_aic32x4_div_recalc_rate() local 351 err = regmap_read(div->regmap, div->reg, &val); in clk_aic32x4_div_recalc_rate()
|
| A D | es8311.c | 327 unsigned int div; member 382 unsigned int div = coeff->div; in es8311_cmp_adj_mclk_coeff() local 389 div = mclk_freq / coeff->mclk; in es8311_cmp_adj_mclk_coeff() 390 div *= coeff->div; in es8311_cmp_adj_mclk_coeff() 391 if (div <= 8) in es8311_cmp_adj_mclk_coeff() 405 out_coeff->div = div; in es8311_cmp_adj_mclk_coeff() 558 if (WARN_ON_ONCE(coeff.div == 0 || coeff.div > 8 || in es8311_hw_params() 583 clkmgr = (coeff.div - 1) << ES8311_CLKMGR2_DIV_PRE_SHIFT | in es8311_hw_params()
|
| A D | wm8900.c | 684 unsigned int div; in fll_factors() local 692 div = 1; in fll_factors() 694 div *= 2; in fll_factors() 701 if (div > 32) { in fll_factors() 704 div, Fref, Fout, target); in fll_factors() 708 fll_div->fllclk_div = div >> 2; in fll_factors() 816 int div_id, int div) in wm8900_set_dai_clkdiv() argument 823 WM8900_REG_CLOCKING1_BCLK_MASK, div); in wm8900_set_dai_clkdiv() 827 WM8900_REG_CLOCKING1_OPCLK_MASK, div); in wm8900_set_dai_clkdiv() 831 WM8900_LRC_MASK, div); in wm8900_set_dai_clkdiv() [all …]
|
| A D | wm9081.c | 119 int div; /* *10 due to .5s */ member 467 unsigned int div; in fll_factors() local 471 div = 1; in fll_factors() 472 while ((Fref / div) > 13500000) { in fll_factors() 473 div *= 2; in fll_factors() 475 if (div > 8) { in fll_factors() 486 Fref /= div; in fll_factors() 489 div = 0; in fll_factors() 492 div++; in fll_factors() 494 if (div > 7) { in fll_factors() [all …]
|
| A D | wm8350.c | 796 snd_soc_component_write(component, WM8350_ADC_DIVIDER, val | div); in wm8350_set_clkdiv() 821 snd_soc_component_write(component, WM8350_DAC_LR_RATE, val | div); in wm8350_set_clkdiv() 826 snd_soc_component_write(component, WM8350_ADC_LR_RATE, val | div); in wm8350_set_clkdiv() 963 int div; /* FLL_OUTDIV */ member 980 fll_div->div = 0x4; in fll_factors() 982 fll_div->div = 0x3; in fll_factors() 984 fll_div->div = 0x2; in fll_factors() 986 fll_div->div = 0x1; in fll_factors() 997 t1 = output * (1 << (fll_div->div + 1)); in fll_factors() 1047 freq_in, freq_out, fll_div.n, fll_div.k, fll_div.div, in wm8350_set_fll() [all …]
|
| A D | adau17x1.c | 473 unsigned int val, div, dsp_div; in adau17x1_hw_params() local 496 div = 0; in adau17x1_hw_params() 500 div = 1; in adau17x1_hw_params() 504 div = 2; in adau17x1_hw_params() 508 div = 3; in adau17x1_hw_params() 512 div = 4; in adau17x1_hw_params() 516 div = 5; in adau17x1_hw_params() 520 div = 6; in adau17x1_hw_params() 528 ADAU17X1_CONVERTER0_CONVSR_MASK, div); in adau17x1_hw_params() 531 regmap_write(adau->regmap, ADAU17X1_SERIAL_SAMPLING_RATE, div); in adau17x1_hw_params()
|
| A D | wm8510.c | 350 int div_id, int div) in wm8510_set_dai_clkdiv() argument 358 snd_soc_component_write(component, WM8510_GPIO, reg | div); in wm8510_set_dai_clkdiv() 362 snd_soc_component_write(component, WM8510_CLOCK, reg | div); in wm8510_set_dai_clkdiv() 366 snd_soc_component_write(component, WM8510_ADC, reg | div); in wm8510_set_dai_clkdiv() 370 snd_soc_component_write(component, WM8510_DAC, reg | div); in wm8510_set_dai_clkdiv() 374 snd_soc_component_write(component, WM8510_CLOCK, reg | div); in wm8510_set_dai_clkdiv()
|
| A D | wm8993.c | 182 int div; /* *10 due to .5s */ member 387 unsigned int div; in fll_factors() local 391 div = 1; in fll_factors() 393 while ((Fref / div) > 13500000) { in fll_factors() 394 div *= 2; in fll_factors() 397 if (div > 8) { in fll_factors() 407 Fref /= div; in fll_factors() 410 div = 0; in fll_factors() 413 div++; in fll_factors() 415 if (div > 7) { in fll_factors() [all …]
|
| A D | arizona.c | 1282 int ref, div, refclk; in arizona_set_opclk() local 1304 div = 1; in arizona_set_opclk() 1305 while (rates[ref] / div >= freq && div < 32) { in arizona_set_opclk() 1312 (div << in arizona_set_opclk() 1317 div++; in arizona_set_opclk() 2156 int refdiv, div; in arizona_calc_fratio() local 2159 div = 1; in arizona_calc_fratio() 2162 div *= 2; in arizona_calc_fratio() 2242 div *= 2; in arizona_calc_fratio() 2267 div++; in arizona_calc_fll() [all …]
|
| A D | nau8822.c | 656 static int nau8822_config_clkdiv(struct snd_soc_dai *dai, int div, int rate) in nau8822_config_clkdiv() argument 669 div = 0; in nau8822_config_clkdiv() 675 div = i; in nau8822_config_clkdiv() 678 div, rate); in nau8822_config_clkdiv() 683 (div << NAU8822_MCLKSEL_SFT)); in nau8822_config_clkdiv() 691 if (pll->mclk_scaler != div) { in nau8822_config_clkdiv() 698 (div << NAU8822_MCLKSEL_SFT)); in nau8822_config_clkdiv() 867 int div = 0, val_len = 0, val_rate = 0; in nau8822_hw_params() local 935 div = nau8822->pll.mclk_scaler; in nau8822_hw_params() 937 nau8822_config_clkdiv(dai, div, params_rate(params)); in nau8822_hw_params()
|
| A D | ak4375.c | 279 unsigned int mclk, plm, mdiv, div; in ak4375_dai_set_pll() local 328 div = 0; in ak4375_dai_set_pll() 333 div = 0; in ak4375_dai_set_pll() 338 div = 1; in ak4375_dai_set_pll() 354 snd_soc_component_update_bits(component, AK4375_13_SRC_CLK_SOURCE, DIV, div); in ak4375_dai_set_pll() 362 ak4375->rate, mclk, freq_in, freq_out, ak4375->pld, plm, mdiv, div); in ak4375_dai_set_pll()
|
| /sound/soc/stm/ |
| A D | stm32_sai_sub.c | 326 int div; in stm32_sai_get_clk_div() local 329 if (div > SAI_XCR1_MCKDIV_MAX(version) || div <= 0) { in stm32_sai_get_clk_div() 340 return div; in stm32_sai_get_clk_div() 413 int div, ret; in stm32_sai_set_parent_rate() local 462 div = 1; in stm32_sai_set_parent_rate() 479 div++; in stm32_sai_set_parent_rate() 497 int div; in stm32_sai_mclk_determine_rate() local 500 if (div <= 0) in stm32_sai_mclk_determine_rate() 523 int div, ret; in stm32_sai_mclk_set_rate() local 526 if (div < 0) in stm32_sai_mclk_set_rate() [all …]
|
| A D | stm32_i2s.c | 256 unsigned int div; member 289 unsigned int ratio, div, divider = 1; in stm32_i2s_calc_clk_div() local 298 div = ratio >> 1; in stm32_i2s_calc_clk_div() 301 if (div) { in stm32_i2s_calc_clk_div() 302 divider = ((2 * div) + odd); in stm32_i2s_calc_clk_div() 304 div, odd, divider); in stm32_i2s_calc_clk_div() 308 if ((div == 1 && odd) || div > I2S_CGFR_I2SDIV_MAX) { in stm32_i2s_calc_clk_div() 318 i2s->div = div; in stm32_i2s_calc_clk_div() 396 int ret, div; in stm32_i2s_set_parent_rate() local 434 div = 1; in stm32_i2s_set_parent_rate() [all …]
|
| /sound/soc/sunxi/ |
| A D | sun4i-i2s.c | 234 u8 div; member 239 { .div = 2, .val = 0 }, 240 { .div = 4, .val = 1 }, 241 { .div = 6, .val = 2 }, 242 { .div = 8, .val = 3 }, 249 { .div = 1, .val = 0 }, 250 { .div = 2, .val = 1 }, 251 { .div = 4, .val = 2 }, 252 { .div = 6, .val = 3 }, 301 if (bdiv->div == div) in sun4i_i2s_get_bclk_div() [all …]
|
| A D | sun8i-codec.c | 515 u8 div; member 520 { .div = 1, .val = 0 }, 521 { .div = 2, .val = 1 }, 522 { .div = 4, .val = 2 }, 523 { .div = 6, .val = 3 }, 524 { .div = 8, .val = 4 }, 525 { .div = 12, .val = 5 }, 526 { .div = 16, .val = 6 }, 527 { .div = 24, .val = 7 }, 546 if (bdiv->div == div) in sun8i_codec_get_bclk_div() [all …]
|
| /sound/soc/jz4740/ |
| A D | jz4740-i2s.c | 226 div = mclk / (64 * rate); in jz4740_i2s_get_i2sdiv() 227 if (div == 0) in jz4740_i2s_get_i2sdiv() 228 div = 1; in jz4740_i2s_get_i2sdiv() 230 rate1 = mclk / (64 * div); in jz4740_i2s_get_i2sdiv() 231 rate2 = mclk / (64 * (div + 1)); in jz4740_i2s_get_i2sdiv() 244 return div; in jz4740_i2s_get_i2sdiv() 245 if (div < i2sdiv_max && err2 < rate/20) in jz4740_i2s_get_i2sdiv() 246 return div + 1; in jz4740_i2s_get_i2sdiv() 259 int div = 1; in jz4740_i2s_hw_params() local 310 if (div < 0) in jz4740_i2s_hw_params() [all …]
|
| /sound/soc/renesas/rcar/ |
| A D | adg.c | 84 if (!div) in rsnd_adg_calculate_brgx() 89 if (0 == (div % ratio)) in rsnd_adg_calculate_brgx() 153 int div; in __rsnd_adg_get_timesel_ratio() local 158 for (div = 2; div <= 98304; div += step) { in __rsnd_adg_get_timesel_ratio() 173 div += step; in __rsnd_adg_get_timesel_ratio() 611 u32 rate, div; in rsnd_adg_get_clkout() local 624 div = rate / req_Hz[ADG_HZ_441]; in rsnd_adg_get_clkout() 625 brgx = rsnd_adg_calculate_brgx(div); in rsnd_adg_get_clkout() 643 div = rate / req_Hz[ADG_HZ_48]; in rsnd_adg_get_clkout() 644 brgx = rsnd_adg_calculate_brgx(div); in rsnd_adg_get_clkout() [all …]
|
| /sound/soc/fsl/ |
| A D | fsl_asrc.c | 132 if (div) in fsl_asrc_divider_avail() 133 *div = 0; in fsl_asrc_divider_avail() 141 if (div) in fsl_asrc_divider_avail() 142 *div = n; in fsl_asrc_divider_avail() 309 for (ps = 0; div > 8; ps++) in fsl_asrc_cal_asrck_divisor() 310 div >>= 1; in fsl_asrc_cal_asrck_divisor() 387 u32 clk_index[2], div[2]; in fsl_asrc_config_pair() local 481 if (div[IN] == 0 || (!ideal && !div_avail)) { in fsl_asrc_config_pair() 487 div[IN] = min_t(u32, 1024, div[IN]); in fsl_asrc_config_pair() 497 if (div[OUT] == 0 || (!ideal && !div_avail)) { in fsl_asrc_config_pair() [all …]
|
| A D | fsl_mqs.c | 110 int div, res; in fsl_mqs_hw_params() local 121 div = mclk_rate / (32 * lrclk * 2 * 8); in fsl_mqs_hw_params() 124 if (res == 0 && div > 0 && div <= 256) { in fsl_mqs_hw_params() 127 (div - 1) << mqs_priv->soc->div_shift); in fsl_mqs_hw_params()
|
| /sound/soc/xilinx/ |
| A D | xlnx_i2s.c | 39 int div_id, int div) in xlnx_i2s_set_sclkout_div() argument 43 if (!div || (div & ~I2S_I2STIM_VALID_MASK)) in xlnx_i2s_set_sclkout_div() 48 writel(div, drv_data->base + I2S_I2STIM_OFFSET); in xlnx_i2s_set_sclkout_div()
|
| /sound/pci/ |
| A D | sonicvibes.c | 524 unsigned int div; in snd_sonicvibes_set_adc_rate() local 527 div = 48000 / rate; in snd_sonicvibes_set_adc_rate() 528 if (div > 8) in snd_sonicvibes_set_adc_rate() 529 div = 8; in snd_sonicvibes_set_adc_rate() 550 div = 48000 / rate; in snd_sonicvibes_hw_constraint_dac_rate() 551 if (div > 8) in snd_sonicvibes_hw_constraint_dac_rate() 552 div = 8; in snd_sonicvibes_hw_constraint_dac_rate() 553 if ((48000 / div) == rate) { in snd_sonicvibes_hw_constraint_dac_rate() 569 unsigned int div; in snd_sonicvibes_set_dac_rate() local 573 if (div > 65535) in snd_sonicvibes_set_dac_rate() [all …]
|
| /sound/drivers/pcsp/ |
| A D | pcsp.c | 46 int div, min_div, order; in snd_pcsp_create() local 69 div = MAX_DIV / min_div; in snd_pcsp_create() 70 order = fls(div) - 1; in snd_pcsp_create()
|