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);
956 cs42l52->beep_rate = hz;
957 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;
1094 struct cs42l52_private *cs42l52;
1101 cs42l52 = devm_kzalloc(&i2c_client->dev, sizeof(*cs42l52), GFP_KERNEL);
1102 if (cs42l52 == NULL)
1104 cs42l52->dev = &i2c_client->dev;
1106 cs42l52->regmap = devm_regmap_init_i2c(i2c_client, &cs42l52_regmap);
1107 if (IS_ERR(cs42l52->regmap)) {
1108 ret = PTR_ERR(cs42l52->regmap);
1113 cs42l52->pdata = *pdata;
1141 cs42l52->pdata = *pdata;
1144 if (cs42l52->pdata.reset_gpio) {
1146 cs42l52->pdata.reset_gpio,
1151 cs42l52->pdata.reset_gpio, ret);
1154 gpio_set_value_cansleep(cs42l52->pdata.reset_gpio, 0);
1155 gpio_set_value_cansleep(cs42l52->pdata.reset_gpio, 1);
1158 i2c_set_clientdata(i2c_client, cs42l52);
1160 ret = regmap_register_patch(cs42l52->regmap, cs42l52_threshold_patch,
1163 dev_warn(cs42l52->dev, "Failed to apply regmap patch: %d\n",
1166 ret = regmap_read(cs42l52->regmap, CS42L52_CHIP, &reg);
1180 if (cs42l52->pdata.mica_diff_cfg)
1181 regmap_update_bits(cs42l52->regmap, CS42L52_MICA_CTL,
1183 cs42l52->pdata.mica_diff_cfg <<
1186 if (cs42l52->pdata.micb_diff_cfg)
1187 regmap_update_bits(cs42l52->regmap, CS42L52_MICB_CTL,
1189 cs42l52->pdata.micb_diff_cfg <<
1192 if (cs42l52->pdata.chgfreq)
1193 regmap_update_bits(cs42l52->regmap, CS42L52_CHARGE_PUMP,
1195 cs42l52->pdata.chgfreq <<
1198 if (cs42l52->pdata.micbias_lvl)
1199 regmap_update_bits(cs42l52->regmap, CS42L52_IFACE_CTL2,
1201 cs42l52->pdata.micbias_lvl);
1211 { .compatible = "cirrus,cs42l52", },
1218 { "cs42l52", 0 },
1225 .name = "cs42l52",