Lines Matching full:component
257 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_volsw_locked_get() local
258 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_volsw_locked_get()
271 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_volsw_locked_put() local
272 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_volsw_locked_put()
285 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_enum_locked_get() local
286 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_enum_locked_get()
299 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_enum_locked_put() local
300 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_enum_locked_put()
311 static void da7219_alc_calib(struct snd_soc_component *component) in da7219_alc_calib() argument
316 mic_ctrl = snd_soc_component_read(component, DA7219_MIC_1_CTRL); in da7219_alc_calib()
319 mixin_ctrl = snd_soc_component_read(component, DA7219_MIXIN_L_CTRL); in da7219_alc_calib()
322 adc_ctrl = snd_soc_component_read(component, DA7219_ADC_L_CTRL); in da7219_alc_calib()
325 snd_soc_component_update_bits(component, DA7219_MIC_1_CTRL, DA7219_MIC_1_AMP_EN_MASK, in da7219_alc_calib()
327 snd_soc_component_update_bits(component, DA7219_MIC_1_CTRL, in da7219_alc_calib()
332 snd_soc_component_update_bits(component, DA7219_MIXIN_L_CTRL, in da7219_alc_calib()
338 snd_soc_component_update_bits(component, DA7219_ADC_L_CTRL, in da7219_alc_calib()
343 snd_soc_component_update_bits(component, DA7219_ALC_CTRL1, in da7219_alc_calib()
347 calib_ctrl = snd_soc_component_read(component, DA7219_ALC_CTRL1); in da7219_alc_calib()
352 dev_warn(component->dev, in da7219_alc_calib()
354 snd_soc_component_update_bits(component, DA7219_ALC_CTRL1, in da7219_alc_calib()
359 snd_soc_component_update_bits(component, DA7219_ALC_CTRL1, in da7219_alc_calib()
367 snd_soc_component_write(component, DA7219_ADC_L_CTRL, adc_ctrl); in da7219_alc_calib()
370 snd_soc_component_write(component, DA7219_MIXIN_L_CTRL, mixin_ctrl); in da7219_alc_calib()
373 snd_soc_component_write(component, DA7219_MIC_1_CTRL, mic_ctrl); in da7219_alc_calib()
379 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_mixin_gain_put() local
380 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_mixin_gain_put()
390 da7219_alc_calib(component); in da7219_mixin_gain_put()
398 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_alc_sw_put() local
399 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_alc_sw_put()
404 da7219_alc_calib(component); in da7219_alc_sw_put()
417 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_tonegen_freq_get() local
418 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_tonegen_freq_get()
444 struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol); in da7219_tonegen_freq_put() local
445 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_tonegen_freq_put()
776 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in da7219_mic_pga_event() local
777 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_mic_pga_event()
800 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in da7219_dai_event() local
801 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_dai_event()
814 dev_err(component->dev, in da7219_dai_event()
819 snd_soc_component_update_bits(component, in da7219_dai_event()
827 snd_soc_component_update_bits(component, DA7219_PC_COUNT, in da7219_dai_event()
831 pll_ctrl = snd_soc_component_read(component, DA7219_PLL_CTRL); in da7219_dai_event()
837 pll_status = snd_soc_component_read(component, DA7219_PLL_SRM_STS); in da7219_dai_event()
847 dev_warn(component->dev, "SRM failed to lock\n"); in da7219_dai_event()
852 snd_soc_component_update_bits(component, DA7219_PC_COUNT, in da7219_dai_event()
861 snd_soc_component_update_bits(component, in da7219_dai_event()
891 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in da7219_mixout_event() local
910 snd_soc_component_update_bits(component, hp_ctrl, min_gain_mask, in da7219_mixout_event()
918 snd_soc_component_update_bits(component, hp_ctrl, min_gain_mask, 0); in da7219_mixout_event()
929 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in da7219_gain_ramp_event() local
930 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_gain_ramp_event()
937 snd_soc_component_read(component, DA7219_GAIN_RAMP_CTRL); in da7219_gain_ramp_event()
938 snd_soc_component_write(component, DA7219_GAIN_RAMP_CTRL, in da7219_gain_ramp_event()
944 snd_soc_component_write(component, DA7219_GAIN_RAMP_CTRL, in da7219_gain_ramp_event()
1166 struct snd_soc_component *component = codec_dai->component; in da7219_set_dai_sysclk() local
1167 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_sysclk()
1183 snd_soc_component_update_bits(component, DA7219_PLL_CTRL, in da7219_set_dai_sysclk()
1188 snd_soc_component_update_bits(component, DA7219_PLL_CTRL, in da7219_set_dai_sysclk()
1217 int da7219_set_pll(struct snd_soc_component *component, int source, unsigned int fout) in da7219_set_pll() argument
1219 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_pll()
1228 dev_err(component->dev, "PLL input clock %d below valid range\n", in da7219_set_pll()
1247 dev_err(component->dev, "PLL input clock %d above valid range\n", in da7219_set_pll()
1258 snd_soc_component_update_bits(component, DA7219_PLL_CTRL, in da7219_set_pll()
1269 dev_err(component->dev, "Invalid PLL config\n"); in da7219_set_pll()
1281 snd_soc_component_write(component, DA7219_PLL_FRAC_TOP, pll_frac_top); in da7219_set_pll()
1282 snd_soc_component_write(component, DA7219_PLL_FRAC_BOT, pll_frac_bot); in da7219_set_pll()
1283 snd_soc_component_write(component, DA7219_PLL_INTEGER, pll_integer); in da7219_set_pll()
1284 snd_soc_component_update_bits(component, DA7219_PLL_CTRL, in da7219_set_pll()
1294 struct snd_soc_component *component = codec_dai->component; in da7219_set_dai_pll() local
1295 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_pll()
1299 ret = da7219_set_pll(component, source, fout); in da7219_set_dai_pll()
1307 struct snd_soc_component *component = codec_dai->component; in da7219_set_dai_fmt() local
1308 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_fmt()
1382 snd_soc_component_update_bits(component, DA7219_DAI_CLK_MODE, in da7219_set_dai_fmt()
1385 snd_soc_component_update_bits(component, DA7219_DAI_CTRL, DA7219_DAI_FORMAT_MASK, in da7219_set_dai_fmt()
1391 static int da7219_set_bclks_per_wclk(struct snd_soc_component *component, in da7219_set_bclks_per_wclk() argument
1413 snd_soc_component_update_bits(component, DA7219_DAI_CLK_MODE, in da7219_set_bclks_per_wclk()
1424 struct snd_soc_component *component = dai->component; in da7219_set_dai_tdm_slot() local
1425 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_tdm_slot()
1438 snd_soc_component_update_bits(component, DA7219_DAI_TDM_CTRL, in da7219_set_dai_tdm_slot()
1449 dev_err(component->dev, in da7219_set_dai_tdm_slot()
1461 dev_err(component->dev, "Invalid frame offset %d\n", offset); in da7219_set_dai_tdm_slot()
1477 dev_err(component->dev, in da7219_set_dai_tdm_slot()
1483 ret = da7219_set_bclks_per_wclk(component, frame_size); in da7219_set_dai_tdm_slot()
1485 dev_err(component->dev, in da7219_set_dai_tdm_slot()
1497 snd_soc_component_update_bits(component, DA7219_DAI_TDM_CTRL, in da7219_set_dai_tdm_slot()
1508 static int da7219_set_sr(struct snd_soc_component *component, in da7219_set_sr() argument
1551 snd_soc_component_write(component, DA7219_SR, fs); in da7219_set_sr()
1560 struct snd_soc_component *component = dai->component; in da7219_hw_params() local
1561 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_hw_params()
1589 dev_err(component->dev, in da7219_hw_params()
1600 dev_err(component->dev, in da7219_hw_params()
1605 ret = da7219_set_sr(component, sr); in da7219_hw_params()
1607 dev_err(component->dev, in da7219_hw_params()
1636 dev_err(component->dev, in da7219_hw_params()
1643 dev_err(component->dev, in da7219_hw_params()
1649 ret = da7219_set_bclks_per_wclk(component, frame_size); in da7219_hw_params()
1651 dev_err(component->dev, in da7219_hw_params()
1659 snd_soc_component_update_bits(component, DA7219_DAI_CTRL, in da7219_hw_params()
1801 static int da7219_set_bias_level(struct snd_soc_component *component, in da7219_set_bias_level() argument
1804 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_bias_level()
1812 if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_STANDBY) { in da7219_set_bias_level()
1816 dev_err(component->dev, in da7219_set_bias_level()
1825 if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_OFF) in da7219_set_bias_level()
1827 snd_soc_component_update_bits(component, DA7219_REFERENCES, in da7219_set_bias_level()
1831 if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_PREPARE) { in da7219_set_bias_level()
1840 snd_soc_component_update_bits(component, DA7219_REFERENCES, in da7219_set_bias_level()
1855 static int da7219_handle_supplies(struct snd_soc_component *component, in da7219_handle_supplies() argument
1858 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_handle_supplies()
1866 ret = regulator_bulk_get(component->dev, DA7219_NUM_SUPPLIES, in da7219_handle_supplies()
1869 dev_err(component->dev, "Failed to get supplies"); in da7219_handle_supplies()
1880 dev_warn(component->dev, "Invalid VDDIO voltage\n"); in da7219_handle_supplies()
1887 dev_err(component->dev, "Failed to enable supplies"); in da7219_handle_supplies()
1901 struct snd_soc_component *component = da7219->component; in da7219_wclk_prepare() local
1906 snd_soc_component_update_bits(component, DA7219_DAI_CLK_MODE, in da7219_wclk_prepare()
1918 struct snd_soc_component *component = da7219->component; in da7219_wclk_unprepare() local
1923 snd_soc_component_update_bits(component, DA7219_DAI_CLK_MODE, in da7219_wclk_unprepare()
1932 struct snd_soc_component *component = da7219->component; in da7219_wclk_is_prepared() local
1938 clk_reg = snd_soc_component_read(component, DA7219_DAI_CLK_MODE); in da7219_wclk_is_prepared()
1949 struct snd_soc_component *component = da7219->component; in da7219_wclk_recalc_rate() local
1950 u8 fs = snd_soc_component_read(component, DA7219_SR); in da7219_wclk_recalc_rate()
2020 struct snd_soc_component *component = da7219->component; in da7219_wclk_set_rate() local
2025 return da7219_set_sr(component, rate); in da7219_wclk_set_rate()
2034 struct snd_soc_component *component = da7219->component; in da7219_bclk_recalc_rate() local
2035 u8 bclks_per_wclk = snd_soc_component_read(component, in da7219_bclk_recalc_rate()
2097 struct snd_soc_component *component = da7219->component; in da7219_bclk_set_rate() local
2105 return da7219_set_bclks_per_wclk(component, factor); in da7219_bclk_set_rate()
2124 static int da7219_register_dai_clks(struct snd_soc_component *component) in da7219_register_dai_clks() argument
2126 struct device *dev = component->dev; in da7219_register_dai_clks()
2128 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_register_dai_clks()
2232 static void da7219_free_dai_clks(struct snd_soc_component *component) in da7219_free_dai_clks() argument
2234 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_free_dai_clks()
2235 struct device_node *np = component->dev->of_node; in da7219_free_dai_clks()
2252 static inline int da7219_register_dai_clks(struct snd_soc_component *component) in da7219_register_dai_clks() argument
2257 static void da7219_free_dai_clks(struct snd_soc_component *component) {} in da7219_free_dai_clks() argument
2260 static void da7219_handle_pdata(struct snd_soc_component *component) in da7219_handle_pdata() argument
2262 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_handle_pdata()
2283 snd_soc_component_write(component, DA7219_MICBIAS_CTRL, micbias_lvl); in da7219_handle_pdata()
2298 snd_soc_component_write(component, DA7219_MIC_1_SELECT, in da7219_handle_pdata()
2445 static int da7219_probe(struct snd_soc_component *component) in da7219_probe() argument
2447 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_probe()
2452 da7219->component = component; in da7219_probe()
2457 ret = da7219_handle_supplies(component, &io_voltage_lvl); in da7219_probe()
2481 /* Soft reset component */ in da7219_probe()
2496 snd_soc_component_write(component, DA7219_IO_CTRL, io_voltage_lvl); in da7219_probe()
2500 dev_err(component->dev, "Failed to read chip revision: %d\n", ret); in da7219_probe()
2509 dev_err(component->dev, "Failed to register AA patch: %d\n", in da7219_probe()
2519 da7219_handle_pdata(component); in da7219_probe()
2522 da7219->mclk = clk_get(component->dev, "mclk"); in da7219_probe()
2533 ret = da7219_register_dai_clks(component); in da7219_probe()
2538 snd_soc_component_update_bits(component, DA7219_PC_COUNT, DA7219_PC_FREERUN_MASK, in da7219_probe()
2542 snd_soc_component_update_bits(component, DA7219_MIXIN_L_CTRL, in da7219_probe()
2545 snd_soc_component_update_bits(component, DA7219_ADC_L_CTRL, DA7219_ADC_L_RAMP_EN_MASK, in da7219_probe()
2547 snd_soc_component_update_bits(component, DA7219_DAC_L_CTRL, DA7219_DAC_L_RAMP_EN_MASK, in da7219_probe()
2549 snd_soc_component_update_bits(component, DA7219_DAC_R_CTRL, DA7219_DAC_R_RAMP_EN_MASK, in da7219_probe()
2551 snd_soc_component_update_bits(component, DA7219_HP_L_CTRL, in da7219_probe()
2554 snd_soc_component_update_bits(component, DA7219_HP_R_CTRL, in da7219_probe()
2559 snd_soc_component_update_bits(component, DA7219_HP_L_CTRL, in da7219_probe()
2562 snd_soc_component_update_bits(component, DA7219_HP_R_CTRL, in da7219_probe()
2567 snd_soc_component_write(component, DA7219_TONE_GEN_CYCLES, DA7219_BEEP_CYCLES_MASK); in da7219_probe()
2570 ret = da7219_aad_init(component); in da7219_probe()
2577 da7219_free_dai_clks(component); in da7219_probe()
2589 static void da7219_remove(struct snd_soc_component *component) in da7219_remove() argument
2591 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_remove()
2593 da7219_aad_exit(component); in da7219_remove()
2595 da7219_free_dai_clks(component); in da7219_remove()
2604 static int da7219_suspend(struct snd_soc_component *component) in da7219_suspend() argument
2606 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_suspend()
2610 da7219_aad_suspend(component); in da7219_suspend()
2612 snd_soc_component_force_bias_level(component, SND_SOC_BIAS_OFF); in da7219_suspend()
2617 static int da7219_resume(struct snd_soc_component *component) in da7219_resume() argument
2619 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_resume()
2621 snd_soc_component_force_bias_level(component, SND_SOC_BIAS_STANDBY); in da7219_resume()
2625 da7219_aad_resume(component); in da7219_resume()
2691 dev_err(dev, "Failed to register da7219 component: %d\n", ret); in da7219_i2c_probe()