Lines Matching full:max98095

3  * max98095.c -- MAX98095 ALSA SoC Audio driver
25 #include <sound/max98095.h>
27 #include "max98095.h"
30 MAX98095,
354 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
357 max98095->mic1pre = sel;
368 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
370 ucontrol->value.integer.value[0] = max98095->mic1pre;
378 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
381 max98095->mic2pre = sel;
392 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
394 ucontrol->value.integer.value[0] = max98095->mic2pre;
599 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
605 (1+max98095->mic1pre)<<M98095_MICPRE_SHIFT);
608 (1+max98095->mic2pre)<<M98095_MICPRE_SHIFT);
629 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
635 state = &max98095->lin_state;
943 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
949 cdata = &max98095->dai[0];
975 if (max98095->sysclk == 0) {
981 do_div(ni, (unsigned long long int)max98095->sysclk);
1004 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1010 cdata = &max98095->dai[1];
1036 if (max98095->sysclk == 0) {
1042 do_div(ni, (unsigned long long int)max98095->sysclk);
1065 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1071 cdata = &max98095->dai[2];
1097 if (max98095->sysclk == 0) {
1103 do_div(ni, (unsigned long long int)max98095->sysclk);
1125 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1128 if (freq == max98095->sysclk)
1131 if (!IS_ERR(max98095->mclk)) {
1132 freq = clk_round_rate(max98095->mclk, freq);
1133 clk_set_rate(max98095->mclk, freq);
1154 max98095->sysclk = freq;
1162 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1166 cdata = &max98095->dai[0];
1228 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1232 cdata = &max98095->dai[1];
1295 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1299 cdata = &max98095->dai[2];
1361 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1376 if (IS_ERR(max98095->mclk))
1380 clk_disable_unprepare(max98095->mclk);
1382 ret = clk_prepare_enable(max98095->mclk);
1390 ret = regcache_sync(max98095->regmap);
1405 regcache_mark_dirty(max98095->regmap);
1489 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1490 struct max98095_pdata *pdata = max98095->pdata;
1501 if (!pdata || !max98095->eq_textcnt)
1507 cdata = &max98095->dai[channel];
1515 if (strcmp(pdata->eq_cfg[i].name, max98095->eq_texts[sel]) == 0 &&
1534 mutex_lock(&max98095->lock);
1542 mutex_unlock(&max98095->lock);
1553 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1557 cdata = &max98095->dai[channel];
1565 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1566 struct max98095_pdata *pdata = max98095->pdata;
1575 max98095->eq_enum,
1579 max98095->eq_enum,
1590 max98095->eq_textcnt = 0;
1591 max98095->eq_texts = NULL;
1593 for (j = 0; j < max98095->eq_textcnt; j++) {
1594 if (strcmp(cfg[i].name, max98095->eq_texts[j]) == 0)
1598 if (j != max98095->eq_textcnt)
1602 t = krealloc(max98095->eq_texts,
1603 sizeof(char *) * (max98095->eq_textcnt + 1),
1609 t[max98095->eq_textcnt] = cfg[i].name;
1610 max98095->eq_textcnt++;
1611 max98095->eq_texts = t;
1615 max98095->eq_enum.texts = max98095->eq_texts;
1616 max98095->eq_enum.items = max98095->eq_textcnt;
1640 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1641 struct max98095_pdata *pdata = max98095->pdata;
1652 if (!pdata || !max98095->bq_textcnt)
1658 cdata = &max98095->dai[channel];
1666 if (strcmp(pdata->bq_cfg[i].name, max98095->bq_texts[sel]) == 0 &&
1685 mutex_lock(&max98095->lock);
1690 mutex_unlock(&max98095->lock);
1701 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1708 cdata = &max98095->dai[channel];
1716 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1717 struct max98095_pdata *pdata = max98095->pdata;
1726 max98095->bq_enum,
1730 max98095->bq_enum,
1742 max98095->bq_textcnt = 0;
1743 max98095->bq_texts = NULL;
1745 for (j = 0; j < max98095->bq_textcnt; j++) {
1746 if (strcmp(cfg[i].name, max98095->bq_texts[j]) == 0)
1750 if (j != max98095->bq_textcnt)
1754 t = krealloc(max98095->bq_texts,
1755 sizeof(char *) * (max98095->bq_textcnt + 1),
1761 t[max98095->bq_textcnt] = cfg[i].name;
1762 max98095->bq_textcnt++;
1763 max98095->bq_texts = t;
1767 max98095->bq_enum.texts = max98095->bq_texts;
1768 max98095->bq_enum.items = max98095->bq_textcnt;
1777 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1778 struct max98095_pdata *pdata = max98095->pdata;
1807 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1821 max98095->headphone_jack)
1825 if ((value & M98095_MIC_IN) && max98095->mic_jack)
1828 if (max98095->headphone_jack == max98095->mic_jack) {
1829 snd_soc_jack_report(max98095->headphone_jack,
1833 if (max98095->headphone_jack)
1834 snd_soc_jack_report(max98095->headphone_jack,
1836 if (max98095->mic_jack)
1837 snd_soc_jack_report(max98095->mic_jack,
1846 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1851 if (max98095->pdata->jack_detect_pin5en)
1854 if (max98095->pdata->jack_detect_delay)
1855 slew = max98095->pdata->jack_detect_delay;
1890 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1894 max98095->headphone_jack = hp_jack;
1895 max98095->mic_jack = mic_jack;
1919 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1921 if (max98095->headphone_jack || max98095->mic_jack)
1931 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1936 if (max98095->headphone_jack || max98095->mic_jack) {
1981 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
1986 max98095->mclk = devm_clk_get(component->dev, "mclk");
1987 if (PTR_ERR(max98095->mclk) == -EPROBE_DEFER)
1997 max98095->sysclk = (unsigned)-1;
1998 max98095->eq_textcnt = 0;
1999 max98095->bq_textcnt = 0;
2001 cdata = &max98095->dai[0];
2007 cdata = &max98095->dai[1];
2013 cdata = &max98095->dai[2];
2019 max98095->lin_state = 0;
2020 max98095->mic1pre = 0;
2021 max98095->mic2pre = 0;
2028 IRQF_ONESHOT, "max98095", component);
2081 struct max98095_priv *max98095 = snd_soc_component_get_drvdata(component);
2084 if (max98095->headphone_jack || max98095->mic_jack)
2109 { "max98095", MAX98095 },
2116 struct max98095_priv *max98095;
2119 max98095 = devm_kzalloc(&i2c->dev, sizeof(struct max98095_priv),
2121 if (max98095 == NULL)
2124 mutex_init(&max98095->lock);
2126 max98095->regmap = devm_regmap_init_i2c(i2c, &max98095_regmap);
2127 if (IS_ERR(max98095->regmap)) {
2128 ret = PTR_ERR(max98095->regmap);
2133 max98095->devtype = (uintptr_t)i2c_get_match_data(i2c);
2134 i2c_set_clientdata(i2c, max98095);
2135 max98095->pdata = i2c->dev.platform_data;
2145 { .compatible = "maxim,max98095", },
2153 .name = "max98095",
2162 MODULE_DESCRIPTION("ALSA SoC MAX98095 driver");