aic3x 67 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x; aic3x 216 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 223 sound/soc/codecs/tlv320aic3x.c aic3x->micbias_vg << MICBIAS_LEVEL_SHIFT); aic3x 1007 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1010 sound/soc/codecs/tlv320aic3x.c switch (aic3x->model) { aic3x 1048 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1053 sound/soc/codecs/tlv320aic3x.c int width = aic3x->slot_width; aic3x 1081 sound/soc/codecs/tlv320aic3x.c if (aic3x->sysclk / (128 * pll_q) == fsref) { aic3x 1126 sound/soc/codecs/tlv320aic3x.c codec_clk = (2048 * fsref) / (aic3x->sysclk / 1000); aic3x 1161 sound/soc/codecs/tlv320aic3x.c d = ((2048 * p * fsref) - j * aic3x->sysclk) aic3x 1162 sound/soc/codecs/tlv320aic3x.c * 100 / (aic3x->sysclk/100); aic3x 1200 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1202 sound/soc/codecs/tlv320aic3x.c int width = aic3x->slot_width; aic3x 1208 sound/soc/codecs/tlv320aic3x.c if (aic3x->dai_fmt == SND_SOC_DAIFMT_DSP_A) aic3x 1209 sound/soc/codecs/tlv320aic3x.c delay += (aic3x->tdm_delay*width + 1); aic3x 1210 sound/soc/codecs/tlv320aic3x.c else if (aic3x->dai_fmt == SND_SOC_DAIFMT_DSP_B) aic3x 1211 sound/soc/codecs/tlv320aic3x.c delay += aic3x->tdm_delay*width; aic3x 1240 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1248 sound/soc/codecs/tlv320aic3x.c aic3x->sysclk = freq; aic3x 1256 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1265 sound/soc/codecs/tlv320aic3x.c aic3x->master = 1; aic3x 1269 sound/soc/codecs/tlv320aic3x.c aic3x->master = 0; aic3x 1273 sound/soc/codecs/tlv320aic3x.c aic3x->master = 1; aic3x 1278 sound/soc/codecs/tlv320aic3x.c aic3x->master = 1; aic3x 1308 sound/soc/codecs/tlv320aic3x.c aic3x->dai_fmt = fmt & SND_SOC_DAIFMT_FORMAT_MASK; aic3x 1322 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1354 sound/soc/codecs/tlv320aic3x.c aic3x->tdm_delay = lsb; aic3x 1355 sound/soc/codecs/tlv320aic3x.c aic3x->slot_width = slot_width; aic3x 1369 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = disable_nb->aic3x; aic3x 1376 sound/soc/codecs/tlv320aic3x.c if (gpio_is_valid(aic3x->gpio_reset)) aic3x 1377 sound/soc/codecs/tlv320aic3x.c gpio_set_value(aic3x->gpio_reset, 0); aic3x 1378 sound/soc/codecs/tlv320aic3x.c regcache_mark_dirty(aic3x->regmap); aic3x 1386 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1391 sound/soc/codecs/tlv320aic3x.c ret = regulator_bulk_enable(ARRAY_SIZE(aic3x->supplies), aic3x 1392 sound/soc/codecs/tlv320aic3x.c aic3x->supplies); aic3x 1395 sound/soc/codecs/tlv320aic3x.c aic3x->power = 1; aic3x 1397 sound/soc/codecs/tlv320aic3x.c if (gpio_is_valid(aic3x->gpio_reset)) { aic3x 1399 sound/soc/codecs/tlv320aic3x.c gpio_set_value(aic3x->gpio_reset, 1); aic3x 1403 sound/soc/codecs/tlv320aic3x.c regcache_cache_only(aic3x->regmap, false); aic3x 1404 sound/soc/codecs/tlv320aic3x.c regcache_sync(aic3x->regmap); aic3x 1430 sound/soc/codecs/tlv320aic3x.c regcache_mark_dirty(aic3x->regmap); aic3x 1431 sound/soc/codecs/tlv320aic3x.c aic3x->power = 0; aic3x 1433 sound/soc/codecs/tlv320aic3x.c regcache_cache_only(aic3x->regmap, true); aic3x 1434 sound/soc/codecs/tlv320aic3x.c ret = regulator_bulk_disable(ARRAY_SIZE(aic3x->supplies), aic3x 1435 sound/soc/codecs/tlv320aic3x.c aic3x->supplies); aic3x 1444 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1451 sound/soc/codecs/tlv320aic3x.c aic3x->master) { aic3x 1458 sound/soc/codecs/tlv320aic3x.c if (!aic3x->power) aic3x 1461 sound/soc/codecs/tlv320aic3x.c aic3x->master) { aic3x 1468 sound/soc/codecs/tlv320aic3x.c if (aic3x->power) aic3x 1532 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1575 sound/soc/codecs/tlv320aic3x.c if (aic3x->model != AIC3X_MODEL_3104) { aic3x 1586 sound/soc/codecs/tlv320aic3x.c switch (aic3x->model) { aic3x 1598 sound/soc/codecs/tlv320aic3x.c aic3x->ocmv << HPOUT_SC_OCMV_SHIFT); aic3x 1603 sound/soc/codecs/tlv320aic3x.c static bool aic3x_is_shared_reset(struct aic3x_priv *aic3x) aic3x 1608 sound/soc/codecs/tlv320aic3x.c if (gpio_is_valid(aic3x->gpio_reset) && aic3x 1609 sound/soc/codecs/tlv320aic3x.c aic3x->gpio_reset == a->gpio_reset) aic3x 1618 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = snd_soc_component_get_drvdata(component); aic3x 1621 sound/soc/codecs/tlv320aic3x.c aic3x->component = component; aic3x 1623 sound/soc/codecs/tlv320aic3x.c for (i = 0; i < ARRAY_SIZE(aic3x->supplies); i++) { aic3x 1624 sound/soc/codecs/tlv320aic3x.c aic3x->disable_nb[i].nb.notifier_call = aic3x_regulator_event; aic3x 1625 sound/soc/codecs/tlv320aic3x.c aic3x->disable_nb[i].aic3x = aic3x; aic3x 1627 sound/soc/codecs/tlv320aic3x.c aic3x->supplies[i].consumer, aic3x 1628 sound/soc/codecs/tlv320aic3x.c &aic3x->disable_nb[i].nb); aic3x 1637 sound/soc/codecs/tlv320aic3x.c regcache_mark_dirty(aic3x->regmap); aic3x 1640 sound/soc/codecs/tlv320aic3x.c if (aic3x->setup) { aic3x 1641 sound/soc/codecs/tlv320aic3x.c if (aic3x->model != AIC3X_MODEL_3104) { aic3x 1644 sound/soc/codecs/tlv320aic3x.c (aic3x->setup->gpio_func[0] & 0xf) << 4); aic3x 1646 sound/soc/codecs/tlv320aic3x.c (aic3x->setup->gpio_func[1] & 0xf) << 4); aic3x 1652 sound/soc/codecs/tlv320aic3x.c switch (aic3x->model) { aic3x 1671 sound/soc/codecs/tlv320aic3x.c switch (aic3x->micbias_vg) { aic3x 1677 sound/soc/codecs/tlv320aic3x.c (aic3x->micbias_vg) << MICBIAS_LEVEL_SHIFT); aic3x 1710 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = i2c_get_clientdata(client); aic3x 1717 sound/soc/codecs/tlv320aic3x.c aic3x->ocmv = value; aic3x 1722 sound/soc/codecs/tlv320aic3x.c dvdd = regulator_get_voltage(aic3x->supplies[1].consumer); aic3x 1723 sound/soc/codecs/tlv320aic3x.c avdd = regulator_get_voltage(aic3x->supplies[2].consumer); aic3x 1730 sound/soc/codecs/tlv320aic3x.c aic3x->ocmv = HPOUT_SC_OCMV_1_8V; aic3x 1732 sound/soc/codecs/tlv320aic3x.c aic3x->ocmv = HPOUT_SC_OCMV_1_65V; aic3x 1734 sound/soc/codecs/tlv320aic3x.c aic3x->ocmv = HPOUT_SC_OCMV_1_5V; aic3x 1736 sound/soc/codecs/tlv320aic3x.c aic3x->ocmv = HPOUT_SC_OCMV_1_35V; aic3x 1777 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x; aic3x 1783 sound/soc/codecs/tlv320aic3x.c aic3x = devm_kzalloc(&i2c->dev, sizeof(struct aic3x_priv), GFP_KERNEL); aic3x 1784 sound/soc/codecs/tlv320aic3x.c if (!aic3x) aic3x 1787 sound/soc/codecs/tlv320aic3x.c aic3x->regmap = devm_regmap_init_i2c(i2c, &aic3x_regmap); aic3x 1788 sound/soc/codecs/tlv320aic3x.c if (IS_ERR(aic3x->regmap)) { aic3x 1789 sound/soc/codecs/tlv320aic3x.c ret = PTR_ERR(aic3x->regmap); aic3x 1793 sound/soc/codecs/tlv320aic3x.c regcache_cache_only(aic3x->regmap, true); aic3x 1795 sound/soc/codecs/tlv320aic3x.c i2c_set_clientdata(i2c, aic3x); aic3x 1797 sound/soc/codecs/tlv320aic3x.c aic3x->gpio_reset = pdata->gpio_reset; aic3x 1798 sound/soc/codecs/tlv320aic3x.c aic3x->setup = pdata->setup; aic3x 1799 sound/soc/codecs/tlv320aic3x.c aic3x->micbias_vg = pdata->micbias_vg; aic3x 1808 sound/soc/codecs/tlv320aic3x.c aic3x->gpio_reset = ret; aic3x 1813 sound/soc/codecs/tlv320aic3x.c aic3x->gpio_reset = ret; aic3x 1815 sound/soc/codecs/tlv320aic3x.c aic3x->gpio_reset = -1; aic3x 1821 sound/soc/codecs/tlv320aic3x.c aic3x->setup = ai3x_setup; aic3x 1827 sound/soc/codecs/tlv320aic3x.c aic3x->micbias_vg = AIC3X_MICBIAS_2_0V; aic3x 1830 sound/soc/codecs/tlv320aic3x.c aic3x->micbias_vg = AIC3X_MICBIAS_2_5V; aic3x 1833 sound/soc/codecs/tlv320aic3x.c aic3x->micbias_vg = AIC3X_MICBIAS_AVDDV; aic3x 1836 sound/soc/codecs/tlv320aic3x.c aic3x->micbias_vg = AIC3X_MICBIAS_OFF; aic3x 1841 sound/soc/codecs/tlv320aic3x.c aic3x->micbias_vg = AIC3X_MICBIAS_OFF; aic3x 1845 sound/soc/codecs/tlv320aic3x.c aic3x->gpio_reset = -1; aic3x 1848 sound/soc/codecs/tlv320aic3x.c aic3x->model = id->driver_data; aic3x 1850 sound/soc/codecs/tlv320aic3x.c if (gpio_is_valid(aic3x->gpio_reset) && aic3x 1851 sound/soc/codecs/tlv320aic3x.c !aic3x_is_shared_reset(aic3x)) { aic3x 1852 sound/soc/codecs/tlv320aic3x.c ret = gpio_request(aic3x->gpio_reset, "tlv320aic3x reset"); aic3x 1855 sound/soc/codecs/tlv320aic3x.c gpio_direction_output(aic3x->gpio_reset, 0); aic3x 1858 sound/soc/codecs/tlv320aic3x.c for (i = 0; i < ARRAY_SIZE(aic3x->supplies); i++) aic3x 1859 sound/soc/codecs/tlv320aic3x.c aic3x->supplies[i].supply = aic3x_supply_names[i]; aic3x 1861 sound/soc/codecs/tlv320aic3x.c ret = devm_regulator_bulk_get(&i2c->dev, ARRAY_SIZE(aic3x->supplies), aic3x 1862 sound/soc/codecs/tlv320aic3x.c aic3x->supplies); aic3x 1870 sound/soc/codecs/tlv320aic3x.c if (aic3x->model == AIC3X_MODEL_3007) { aic3x 1871 sound/soc/codecs/tlv320aic3x.c ret = regmap_register_patch(aic3x->regmap, aic3007_class_d, aic3x 1884 sound/soc/codecs/tlv320aic3x.c INIT_LIST_HEAD(&aic3x->list); aic3x 1885 sound/soc/codecs/tlv320aic3x.c list_add(&aic3x->list, &reset_list); aic3x 1890 sound/soc/codecs/tlv320aic3x.c if (gpio_is_valid(aic3x->gpio_reset) && aic3x 1891 sound/soc/codecs/tlv320aic3x.c !aic3x_is_shared_reset(aic3x)) aic3x 1892 sound/soc/codecs/tlv320aic3x.c gpio_free(aic3x->gpio_reset); aic3x 1899 sound/soc/codecs/tlv320aic3x.c struct aic3x_priv *aic3x = i2c_get_clientdata(client); aic3x 1901 sound/soc/codecs/tlv320aic3x.c list_del(&aic3x->list); aic3x 1903 sound/soc/codecs/tlv320aic3x.c if (gpio_is_valid(aic3x->gpio_reset) && aic3x 1904 sound/soc/codecs/tlv320aic3x.c !aic3x_is_shared_reset(aic3x)) { aic3x 1905 sound/soc/codecs/tlv320aic3x.c gpio_set_value(aic3x->gpio_reset, 0); aic3x 1906 sound/soc/codecs/tlv320aic3x.c gpio_free(aic3x->gpio_reset);