Lines Matching refs:da7219

262 	struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component);  in da7219_volsw_locked_get()  local
265 mutex_lock(&da7219->ctrl_lock); in da7219_volsw_locked_get()
267 mutex_unlock(&da7219->ctrl_lock); in da7219_volsw_locked_get()
276 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_volsw_locked_put() local
279 mutex_lock(&da7219->ctrl_lock); in da7219_volsw_locked_put()
281 mutex_unlock(&da7219->ctrl_lock); in da7219_volsw_locked_put()
290 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_enum_locked_get() local
293 mutex_lock(&da7219->ctrl_lock); in da7219_enum_locked_get()
295 mutex_unlock(&da7219->ctrl_lock); in da7219_enum_locked_get()
304 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_enum_locked_put() local
307 mutex_lock(&da7219->ctrl_lock); in da7219_enum_locked_put()
309 mutex_unlock(&da7219->ctrl_lock); in da7219_enum_locked_put()
384 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_mixin_gain_put() local
393 if ((ret == 1) && (da7219->alc_en)) in da7219_mixin_gain_put()
403 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_alc_sw_put() local
407 if ((ucontrol->value.integer.value[0]) && (!da7219->alc_en)) { in da7219_alc_sw_put()
409 da7219->alc_en = true; in da7219_alc_sw_put()
411 da7219->alc_en = false; in da7219_alc_sw_put()
422 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_tonegen_freq_get() local
429 mutex_lock(&da7219->ctrl_lock); in da7219_tonegen_freq_get()
430 ret = regmap_raw_read(da7219->regmap, reg, &val, sizeof(val)); in da7219_tonegen_freq_get()
431 mutex_unlock(&da7219->ctrl_lock); in da7219_tonegen_freq_get()
449 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_tonegen_freq_put() local
463 mutex_lock(&da7219->ctrl_lock); in da7219_tonegen_freq_put()
464 ret = regmap_raw_write(da7219->regmap, reg, &val, sizeof(val)); in da7219_tonegen_freq_put()
465 mutex_unlock(&da7219->ctrl_lock); in da7219_tonegen_freq_put()
775 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_mic_pga_event() local
779 if (da7219->micbias_on_event) { in da7219_mic_pga_event()
784 da7219->micbias_on_event = false; in da7219_mic_pga_event()
785 msleep(da7219->mic_pga_delay); in da7219_mic_pga_event()
799 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_dai_event() local
806 if (da7219->master) { in da7219_dai_event()
808 if (da7219->dai_clks) { in da7219_dai_event()
809 ret = clk_prepare_enable(da7219->dai_clks); in da7219_dai_event()
854 if (da7219->master) { in da7219_dai_event()
855 if (da7219->dai_clks) in da7219_dai_event()
856 clk_disable_unprepare(da7219->dai_clks); in da7219_dai_event()
927 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_gain_ramp_event() local
933 da7219->gain_ramp_ctrl = in da7219_gain_ramp_event()
942 da7219->gain_ramp_ctrl); in da7219_gain_ramp_event()
1164 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_sysclk() local
1167 if ((da7219->clk_src == clk_id) && (da7219->mclk_rate == freq)) in da7219_set_dai_sysclk()
1176 mutex_lock(&da7219->pll_lock); in da7219_set_dai_sysclk()
1190 mutex_unlock(&da7219->pll_lock); in da7219_set_dai_sysclk()
1194 da7219->clk_src = clk_id; in da7219_set_dai_sysclk()
1196 if (da7219->mclk) { in da7219_set_dai_sysclk()
1197 freq = clk_round_rate(da7219->mclk, freq); in da7219_set_dai_sysclk()
1198 ret = clk_set_rate(da7219->mclk, freq); in da7219_set_dai_sysclk()
1202 mutex_unlock(&da7219->pll_lock); in da7219_set_dai_sysclk()
1207 da7219->mclk_rate = freq; in da7219_set_dai_sysclk()
1209 mutex_unlock(&da7219->pll_lock); in da7219_set_dai_sysclk()
1216 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_pll() local
1224 if (da7219->mclk_rate < 2000000) { in da7219_set_pll()
1226 da7219->mclk_rate); in da7219_set_pll()
1228 } else if (da7219->mclk_rate <= 4500000) { in da7219_set_pll()
1231 } else if (da7219->mclk_rate <= 9000000) { in da7219_set_pll()
1234 } else if (da7219->mclk_rate <= 18000000) { in da7219_set_pll()
1237 } else if (da7219->mclk_rate <= 36000000) { in da7219_set_pll()
1240 } else if (da7219->mclk_rate <= 54000000) { in da7219_set_pll()
1245 da7219->mclk_rate); in da7219_set_pll()
1248 freq_ref = (da7219->mclk_rate / indiv); in da7219_set_pll()
1292 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_pll() local
1295 mutex_lock(&da7219->pll_lock); in da7219_set_dai_pll()
1297 mutex_unlock(&da7219->pll_lock); in da7219_set_dai_pll()
1305 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_fmt() local
1310 da7219->master = true; in da7219_set_dai_fmt()
1313 da7219->master = false; in da7219_set_dai_fmt()
1397 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_dai_tdm_slot() local
1452 regmap_bulk_write(da7219->regmap, DA7219_DAI_OFFSET_LOWER, in da7219_set_dai_tdm_slot()
1672 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_set_bias_level() local
1681 if (da7219->mclk) { in da7219_set_bias_level()
1682 ret = clk_prepare_enable(da7219->mclk); in da7219_set_bias_level()
1701 if (da7219->mclk) in da7219_set_bias_level()
1702 clk_disable_unprepare(da7219->mclk); in da7219_set_bias_level()
1707 if (!da7219->wakeup_source) in da7219_set_bias_level()
1725 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_handle_supplies() local
1732 da7219->supplies[i].supply = da7219_supply_names[i]; in da7219_handle_supplies()
1735 da7219->supplies); in da7219_handle_supplies()
1742 vddio = da7219->supplies[DA7219_SUPPLY_VDDIO].consumer; in da7219_handle_supplies()
1750 ret = regulator_bulk_enable(DA7219_NUM_SUPPLIES, da7219->supplies); in da7219_handle_supplies()
1768 struct da7219_priv *da7219 = in da7219_dai_clks_prepare() local
1770 struct snd_soc_component *component = da7219->aad->component; in da7219_dai_clks_prepare()
1781 struct da7219_priv *da7219 = in da7219_dai_clks_unprepare() local
1783 struct snd_soc_component *component = da7219->aad->component; in da7219_dai_clks_unprepare()
1791 struct da7219_priv *da7219 = in da7219_dai_clks_is_prepared() local
1793 struct snd_soc_component *component = da7219->aad->component; in da7219_dai_clks_is_prepared()
1810 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_register_dai_clks() local
1811 struct da7219_pdata *pdata = da7219->pdata; in da7219_register_dai_clks()
1820 da7219->dai_clks_hw.init = &init; in da7219_register_dai_clks()
1822 dai_clks = devm_clk_register(dev, &da7219->dai_clks_hw); in da7219_register_dai_clks()
1828 da7219->dai_clks = dai_clks; in da7219_register_dai_clks()
1833 &da7219->dai_clks_hw); in da7219_register_dai_clks()
1840 da7219->dai_clks_lookup = dai_clks_lookup; in da7219_register_dai_clks()
1849 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_handle_pdata() local
1850 struct da7219_pdata *pdata = da7219->pdata; in da7219_handle_pdata()
1855 da7219->wakeup_source = pdata->wakeup_source; in da7219_handle_pdata()
1878 da7219->mic_pga_delay = DA7219_MIC_PGA_BASE_DELAY + in da7219_handle_pdata()
1900 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_probe() local
1904 mutex_init(&da7219->ctrl_lock); in da7219_probe()
1905 mutex_init(&da7219->pll_lock); in da7219_probe()
1912 ret = regmap_read(da7219->regmap, DA7219_CHIP_REVISION, &rev); in da7219_probe()
1920 ret = regmap_register_patch(da7219->regmap, da7219_rev_aa_patch, in da7219_probe()
1933 da7219->pdata = dev_get_platdata(component->dev); in da7219_probe()
1934 if (!da7219->pdata) in da7219_probe()
1935 da7219->pdata = da7219_fw_to_pdata(component); in da7219_probe()
1940 da7219->mclk = devm_clk_get(component->dev, "mclk"); in da7219_probe()
1941 if (IS_ERR(da7219->mclk)) { in da7219_probe()
1942 if (PTR_ERR(da7219->mclk) != -ENOENT) { in da7219_probe()
1943 ret = PTR_ERR(da7219->mclk); in da7219_probe()
1946 da7219->mclk = NULL; in da7219_probe()
1990 regulator_bulk_disable(DA7219_NUM_SUPPLIES, da7219->supplies); in da7219_probe()
1997 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_remove() local
2002 if (da7219->dai_clks_lookup) in da7219_remove()
2003 clkdev_drop(da7219->dai_clks_lookup); in da7219_remove()
2007 regulator_bulk_disable(DA7219_NUM_SUPPLIES, da7219->supplies); in da7219_remove()
2013 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_suspend() local
2016 if (!da7219->wakeup_source) in da7219_suspend()
2026 struct da7219_priv *da7219 = snd_soc_component_get_drvdata(component); in da7219_resume() local
2031 if (!da7219->wakeup_source) in da7219_resume()
2203 struct da7219_priv *da7219; in da7219_i2c_probe() local
2207 da7219 = devm_kzalloc(&i2c->dev, sizeof(struct da7219_priv), in da7219_i2c_probe()
2209 if (!da7219) in da7219_i2c_probe()
2212 i2c_set_clientdata(i2c, da7219); in da7219_i2c_probe()
2214 da7219->regmap = devm_regmap_init_i2c(i2c, &da7219_regmap_config); in da7219_i2c_probe()
2215 if (IS_ERR(da7219->regmap)) { in da7219_i2c_probe()
2216 ret = PTR_ERR(da7219->regmap); in da7219_i2c_probe()
2221 regcache_cache_bypass(da7219->regmap, true); in da7219_i2c_probe()
2224 regmap_read(da7219->regmap, DA7219_SYSTEM_ACTIVE, &system_active); in da7219_i2c_probe()
2226 regmap_write(da7219->regmap, DA7219_GAIN_RAMP_CTRL, in da7219_i2c_probe()
2228 regmap_write(da7219->regmap, DA7219_SYSTEM_MODES_INPUT, 0x00); in da7219_i2c_probe()
2229 regmap_write(da7219->regmap, DA7219_SYSTEM_MODES_OUTPUT, 0x01); in da7219_i2c_probe()
2232 regmap_read(da7219->regmap, DA7219_SYSTEM_STATUS, in da7219_i2c_probe()
2242 regmap_write_bits(da7219->regmap, DA7219_ACCDET_CONFIG_1, in da7219_i2c_probe()
2244 regmap_write_bits(da7219->regmap, DA7219_CIF_CTRL, in da7219_i2c_probe()
2247 regmap_write_bits(da7219->regmap, DA7219_SYSTEM_ACTIVE, in da7219_i2c_probe()
2250 regcache_cache_bypass(da7219->regmap, false); in da7219_i2c_probe()