Lines Matching defs:cs42l52

3  * cs42l52.c -- CS42L52 ALSA SoC audio driver
31 #include <sound/cs42l52.h>
32 #include "cs42l52.h"
476 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
477 struct cs42l52_platform_data *pdata = &cs42l52->pdata;
718 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
721 cs42l52->sysclk = freq;
732 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
783 cs42l52->config.format = iface;
784 snd_soc_component_write(component, CS42L52_IFACE_CTL1, cs42l52->config.format);
810 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
814 index = cs42l52_get_clk(cs42l52->sysclk, params_rate(params));
816 cs42l52->sysclk = clk_map_table[index].mclk;
836 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
847 regcache_cache_only(cs42l52->regmap, false);
848 regcache_sync(cs42l52->regmap);
854 regcache_cache_only(cs42l52->regmap, true);
877 .name = "cs42l52",
902 struct cs42l52_private *cs42l52 =
904 struct snd_soc_component *component = cs42l52->component;
910 if (cs42l52->beep_rate) {
912 if (abs(cs42l52->beep_rate - beep_rates[i]) <
913 abs(cs42l52->beep_rate - beep_rates[best]))
918 beep_rates[best], cs42l52->beep_rate);
941 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
957 cs42l52->beep_rate = hz;
958 schedule_work(&cs42l52->beep_work);
965 struct cs42l52_private *cs42l52 = dev_get_drvdata(dev);
973 input_event(cs42l52->beep, EV_SND, SND_TONE, time);
982 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
985 cs42l52->beep = devm_input_allocate_device(component->dev);
986 if (!cs42l52->beep) {
991 INIT_WORK(&cs42l52->beep_work, cs42l52_beep_work);
992 cs42l52->beep_rate = 0;
994 cs42l52->beep->name = "CS42L52 Beep Generator";
995 cs42l52->beep->phys = dev_name(component->dev);
996 cs42l52->beep->id.bustype = BUS_I2C;
998 cs42l52->beep->evbit[0] = BIT_MASK(EV_SND);
999 cs42l52->beep->sndbit[0] = BIT_MASK(SND_BELL) | BIT_MASK(SND_TONE);
1000 cs42l52->beep->event = cs42l52_beep_event;
1001 cs42l52->beep->dev.parent = component->dev;
1002 input_set_drvdata(cs42l52->beep, component);
1004 ret = input_register_device(cs42l52->beep);
1006 cs42l52->beep = NULL;
1019 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
1022 cancel_work_sync(&cs42l52->beep_work);
1023 cs42l52->beep = NULL;
1031 struct cs42l52_private *cs42l52 = snd_soc_component_get_drvdata(component);
1033 regcache_cache_only(cs42l52->regmap, true);
1039 cs42l52->sysclk = CS42L52_DEFAULT_CLK;
1040 cs42l52->config.format = CS42L52_DEFAULT_FORMAT;
1092 struct cs42l52_private *cs42l52;
1099 cs42l52 = devm_kzalloc(&i2c_client->dev, sizeof(*cs42l52), GFP_KERNEL);
1100 if (cs42l52 == NULL)
1102 cs42l52->dev = &i2c_client->dev;
1104 cs42l52->regmap = devm_regmap_init_i2c(i2c_client, &cs42l52_regmap);
1105 if (IS_ERR(cs42l52->regmap)) {
1106 ret = PTR_ERR(cs42l52->regmap);
1111 cs42l52->pdata = *pdata;
1139 cs42l52->pdata = *pdata;
1142 if (cs42l52->pdata.reset_gpio) {
1144 cs42l52->pdata.reset_gpio,
1149 cs42l52->pdata.reset_gpio, ret);
1152 gpio_set_value_cansleep(cs42l52->pdata.reset_gpio, 0);
1153 gpio_set_value_cansleep(cs42l52->pdata.reset_gpio, 1);
1156 i2c_set_clientdata(i2c_client, cs42l52);
1158 ret = regmap_register_patch(cs42l52->regmap, cs42l52_threshold_patch,
1161 dev_warn(cs42l52->dev, "Failed to apply regmap patch: %d\n",
1164 ret = regmap_read(cs42l52->regmap, CS42L52_CHIP, &reg);
1183 if (cs42l52->pdata.mica_diff_cfg)
1184 regmap_update_bits(cs42l52->regmap, CS42L52_MICA_CTL,
1186 cs42l52->pdata.mica_diff_cfg <<
1189 if (cs42l52->pdata.micb_diff_cfg)
1190 regmap_update_bits(cs42l52->regmap, CS42L52_MICB_CTL,
1192 cs42l52->pdata.micb_diff_cfg <<
1195 if (cs42l52->pdata.chgfreq)
1196 regmap_update_bits(cs42l52->regmap, CS42L52_CHARGE_PUMP,
1198 cs42l52->pdata.chgfreq <<
1201 if (cs42l52->pdata.micbias_lvl)
1202 regmap_update_bits(cs42l52->regmap, CS42L52_IFACE_CTL2,
1204 cs42l52->pdata.micbias_lvl);
1211 { .compatible = "cirrus,cs42l52", },
1218 { "cs42l52", 0 },
1225 .name = "cs42l52",