rt5665 1169 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 1177 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_MICBIAS_2, 0x100, rt5665 1180 sound/soc/codecs/rt5665.c regmap_read(rt5665->regmap, RT5665_GPIO_STA, &val); rt5665 1182 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_EJD_CTRL_1, rt5665 1185 sound/soc/codecs/rt5665.c regmap_read(rt5665->regmap, RT5665_GPIO_STA, &val); rt5665 1188 sound/soc/codecs/rt5665.c regmap_read(rt5665->regmap, RT5665_GPIO_STA, rt5665 1193 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_EJD_CTRL_1, rt5665 1195 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_EJD_CTRL_3, 0x3424); rt5665 1196 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_IL_CMD_1, 0x0048); rt5665 1197 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_SAR_IL_CMD_1, 0xa291); rt5665 1201 sound/soc/codecs/rt5665.c rt5665->sar_adc_value = snd_soc_component_read32(rt5665->component, rt5665 1204 sound/soc/codecs/rt5665.c sar_hs_type = rt5665->pdata.sar_hs_type ? rt5665 1205 sound/soc/codecs/rt5665.c rt5665->pdata.sar_hs_type : 729; rt5665 1207 sound/soc/codecs/rt5665.c if (rt5665->sar_adc_value > sar_hs_type) { rt5665 1208 sound/soc/codecs/rt5665.c rt5665->jack_type = SND_JACK_HEADSET; rt5665 1211 sound/soc/codecs/rt5665.c rt5665->jack_type = SND_JACK_HEADPHONE; rt5665 1212 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_SAR_IL_CMD_1, rt5665 1214 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_MICBIAS_2, rt5665 1220 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_SAR_IL_CMD_1, 0x2291); rt5665 1221 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_MICBIAS_2, 0x100, 0); rt5665 1224 sound/soc/codecs/rt5665.c if (rt5665->jack_type == SND_JACK_HEADSET) rt5665 1226 sound/soc/codecs/rt5665.c rt5665->jack_type = 0; rt5665 1229 sound/soc/codecs/rt5665.c dev_dbg(component->dev, "jack_type = %d\n", rt5665->jack_type); rt5665 1230 sound/soc/codecs/rt5665.c return rt5665->jack_type; rt5665 1235 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = data; rt5665 1238 sound/soc/codecs/rt5665.c &rt5665->jack_detect_work, msecs_to_jiffies(250)); rt5665 1245 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = container_of(work, struct rt5665_priv, rt5665 1248 sound/soc/codecs/rt5665.c if (snd_soc_component_read32(rt5665->component, RT5665_AJD1_CTRL) & 0x0010) { rt5665 1250 sound/soc/codecs/rt5665.c rt5665->jack_type = rt5665_headset_detect(rt5665->component, 0); rt5665 1252 sound/soc/codecs/rt5665.c snd_soc_jack_report(rt5665->hs_jack, rt5665->jack_type, rt5665 1257 sound/soc/codecs/rt5665.c schedule_delayed_work(&rt5665->jd_check_work, 500); rt5665 1264 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 1266 sound/soc/codecs/rt5665.c switch (rt5665->pdata.jd_src) { rt5665 1268 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_GPIO_CTRL_1, rt5665 1270 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_RC_CLK_CTRL, rt5665 1272 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_PWR_ANLG_2, rt5665 1274 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_IRQ_CTRL_1, 0x8, 0x8); rt5665 1285 sound/soc/codecs/rt5665.c rt5665->hs_jack = hs_jack; rt5665 1292 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = rt5665 1296 sound/soc/codecs/rt5665.c while (!rt5665->component) { rt5665 1301 sound/soc/codecs/rt5665.c while (!rt5665->component->card->instantiated) { rt5665 1306 sound/soc/codecs/rt5665.c while (!rt5665->calibration_done) { rt5665 1311 sound/soc/codecs/rt5665.c mutex_lock(&rt5665->calibrate_mutex); rt5665 1313 sound/soc/codecs/rt5665.c val = snd_soc_component_read32(rt5665->component, RT5665_AJD1_CTRL) & 0x0010; rt5665 1316 sound/soc/codecs/rt5665.c if (rt5665->jack_type == 0) { rt5665 1318 sound/soc/codecs/rt5665.c rt5665->jack_type = rt5665 1319 sound/soc/codecs/rt5665.c rt5665_headset_detect(rt5665->component, 1); rt5665 1322 sound/soc/codecs/rt5665.c rt5665->jack_type = SND_JACK_HEADSET; rt5665 1323 sound/soc/codecs/rt5665.c btn_type = rt5665_button_detect(rt5665->component); rt5665 1335 sound/soc/codecs/rt5665.c rt5665->jack_type |= SND_JACK_BTN_0; rt5665 1340 sound/soc/codecs/rt5665.c rt5665->jack_type |= SND_JACK_BTN_1; rt5665 1345 sound/soc/codecs/rt5665.c rt5665->jack_type |= SND_JACK_BTN_2; rt5665 1350 sound/soc/codecs/rt5665.c rt5665->jack_type |= SND_JACK_BTN_3; rt5665 1356 sound/soc/codecs/rt5665.c dev_err(rt5665->component->dev, rt5665 1364 sound/soc/codecs/rt5665.c rt5665->jack_type = rt5665_headset_detect(rt5665->component, 0); rt5665 1367 sound/soc/codecs/rt5665.c snd_soc_jack_report(rt5665->hs_jack, rt5665->jack_type, rt5665 1372 sound/soc/codecs/rt5665.c if (rt5665->jack_type & (SND_JACK_BTN_0 | SND_JACK_BTN_1 | rt5665 1374 sound/soc/codecs/rt5665.c schedule_delayed_work(&rt5665->jd_check_work, 0); rt5665 1376 sound/soc/codecs/rt5665.c cancel_delayed_work_sync(&rt5665->jd_check_work); rt5665 1378 sound/soc/codecs/rt5665.c mutex_unlock(&rt5665->calibrate_mutex); rt5665 1480 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 1483 sound/soc/codecs/rt5665.c pd = rl6231_get_pre_div(rt5665->regmap, rt5665 1485 sound/soc/codecs/rt5665.c idx = rl6231_calc_dmic_clk(rt5665->sysclk / pd); rt5665 4109 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4113 sound/soc/codecs/rt5665.c rt5665->lrck[dai->id] = params_rate(params); rt5665 4114 sound/soc/codecs/rt5665.c pre_div = rl6231_get_clk_info(rt5665->sysclk, rt5665->lrck[dai->id]); rt5665 4118 sound/soc/codecs/rt5665.c rt5665->sysclk, rt5665->lrck[dai->id] * 512); rt5665 4120 sound/soc/codecs/rt5665.c rt5665->lrck[dai->id] * 512, 0); rt5665 4130 sound/soc/codecs/rt5665.c rt5665->lrck[dai->id], pre_div, dai->id); rt5665 4186 sound/soc/codecs/rt5665.c switch (rt5665->lrck[dai->id]) { rt5665 4204 sound/soc/codecs/rt5665.c if (rt5665->master[RT5665_AIF2_1] || rt5665->master[RT5665_AIF2_2]) { rt5665 4208 sound/soc/codecs/rt5665.c if (rt5665->master[RT5665_AIF3]) { rt5665 4219 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4224 sound/soc/codecs/rt5665.c rt5665->master[dai->id] = 1; rt5665 4228 sound/soc/codecs/rt5665.c rt5665->master[dai->id] = 0; rt5665 4288 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4291 sound/soc/codecs/rt5665.c if (freq == rt5665->sysclk && clk_id == rt5665->sysclk_src) rt5665 4314 sound/soc/codecs/rt5665.c if (rt5665->master[RT5665_AIF2_1] || rt5665->master[RT5665_AIF2_2]) { rt5665 4318 sound/soc/codecs/rt5665.c if (rt5665->master[RT5665_AIF3]) { rt5665 4323 sound/soc/codecs/rt5665.c rt5665->sysclk = freq; rt5665 4324 sound/soc/codecs/rt5665.c rt5665->sysclk_src = clk_id; rt5665 4335 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4339 sound/soc/codecs/rt5665.c if (source == rt5665->pll_src && freq_in == rt5665->pll_in && rt5665 4340 sound/soc/codecs/rt5665.c freq_out == rt5665->pll_out) rt5665 4346 sound/soc/codecs/rt5665.c rt5665->pll_in = 0; rt5665 4347 sound/soc/codecs/rt5665.c rt5665->pll_out = 0; rt5665 4391 sound/soc/codecs/rt5665.c rt5665->pll_in = freq_in; rt5665 4392 sound/soc/codecs/rt5665.c rt5665->pll_out = freq_out; rt5665 4393 sound/soc/codecs/rt5665.c rt5665->pll_src = source; rt5665 4401 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4405 sound/soc/codecs/rt5665.c rt5665->bclk[dai->id] = ratio; rt5665 4429 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4433 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_DIG_MISC, rt5665 4438 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_PWR_DIG_1, rt5665 4440 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_PWR_ANLG_1, rt5665 4442 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_DIG_MISC, rt5665 4446 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_PWR_DIG_1, rt5665 4448 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_PWR_ANLG_1, rt5665 4461 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4463 sound/soc/codecs/rt5665.c rt5665->component = component; rt5665 4465 sound/soc/codecs/rt5665.c schedule_delayed_work(&rt5665->calibrate_work, msecs_to_jiffies(100)); rt5665 4472 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4474 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_RESET, 0); rt5665 4480 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4482 sound/soc/codecs/rt5665.c regcache_cache_only(rt5665->regmap, true); rt5665 4483 sound/soc/codecs/rt5665.c regcache_mark_dirty(rt5665->regmap); rt5665 4489 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = snd_soc_component_get_drvdata(component); rt5665 4491 sound/soc/codecs/rt5665.c regcache_cache_only(rt5665->regmap, false); rt5665 4492 sound/soc/codecs/rt5665.c regcache_sync(rt5665->regmap); rt5665 4643 sound/soc/codecs/rt5665.c static int rt5665_parse_dt(struct rt5665_priv *rt5665, struct device *dev) rt5665 4645 sound/soc/codecs/rt5665.c rt5665->pdata.in1_diff = of_property_read_bool(dev->of_node, rt5665 4647 sound/soc/codecs/rt5665.c rt5665->pdata.in2_diff = of_property_read_bool(dev->of_node, rt5665 4649 sound/soc/codecs/rt5665.c rt5665->pdata.in3_diff = of_property_read_bool(dev->of_node, rt5665 4651 sound/soc/codecs/rt5665.c rt5665->pdata.in4_diff = of_property_read_bool(dev->of_node, rt5665 4655 sound/soc/codecs/rt5665.c &rt5665->pdata.dmic1_data_pin); rt5665 4657 sound/soc/codecs/rt5665.c &rt5665->pdata.dmic2_data_pin); rt5665 4659 sound/soc/codecs/rt5665.c &rt5665->pdata.jd_src); rt5665 4661 sound/soc/codecs/rt5665.c rt5665->pdata.ldo1_en = of_get_named_gpio(dev->of_node, rt5665 4667 sound/soc/codecs/rt5665.c static void rt5665_calibrate(struct rt5665_priv *rt5665) rt5665 4671 sound/soc/codecs/rt5665.c mutex_lock(&rt5665->calibrate_mutex); rt5665 4673 sound/soc/codecs/rt5665.c regcache_cache_bypass(rt5665->regmap, true); rt5665 4675 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_RESET, 0); rt5665 4676 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_BIAS_CUR_CTRL_8, 0xa602); rt5665 4677 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_HP_CHARGE_PUMP_1, 0x0c26); rt5665 4678 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_MONOMIX_IN_GAIN, 0x021f); rt5665 4679 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_MONO_OUT, 0x480a); rt5665 4680 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_PWR_MIXER, 0x083f); rt5665 4681 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_PWR_DIG_1, 0x0180); rt5665 4682 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_EJD_CTRL_1, 0x4040); rt5665 4683 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_HP_LOGIC_CTRL_2, 0x0000); rt5665 4684 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_DIG_MISC, 0x0001); rt5665 4685 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_MICBIAS_2, 0x0380); rt5665 4686 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_GLB_CLK, 0x8000); rt5665 4687 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_ADDA_CLK_1, 0x1000); rt5665 4688 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_CHOP_DAC, 0x3030); rt5665 4689 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_CALIB_ADC_CTRL, 0x3c05); rt5665 4690 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_PWR_ANLG_1, 0xaa3e); rt5665 4692 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_PWR_ANLG_1, 0xfe7e); rt5665 4693 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_HP_CALIB_CTRL_2, 0x0321); rt5665 4695 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_HP_CALIB_CTRL_1, 0xfc00); rt5665 4698 sound/soc/codecs/rt5665.c regmap_read(rt5665->regmap, RT5665_HP_CALIB_STA_1, &value); rt5665 4706 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_RESET, 0); rt5665 4707 sound/soc/codecs/rt5665.c regcache_cache_bypass(rt5665->regmap, false); rt5665 4714 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_MONO_AMP_CALIB_CTRL_1, 0x9e24); rt5665 4717 sound/soc/codecs/rt5665.c regmap_read(rt5665->regmap, RT5665_MONO_AMP_CALIB_STA1, &value); rt5665 4725 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_RESET, 0); rt5665 4726 sound/soc/codecs/rt5665.c regcache_cache_bypass(rt5665->regmap, false); rt5665 4733 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_RESET, 0); rt5665 4734 sound/soc/codecs/rt5665.c regcache_cache_bypass(rt5665->regmap, false); rt5665 4736 sound/soc/codecs/rt5665.c regcache_mark_dirty(rt5665->regmap); rt5665 4737 sound/soc/codecs/rt5665.c regcache_sync(rt5665->regmap); rt5665 4739 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_BIAS_CUR_CTRL_8, 0xa602); rt5665 4740 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_ASRC_8, 0x0120); rt5665 4743 sound/soc/codecs/rt5665.c rt5665->calibration_done = true; rt5665 4744 sound/soc/codecs/rt5665.c mutex_unlock(&rt5665->calibrate_mutex); rt5665 4749 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = container_of(work, struct rt5665_priv, rt5665 4752 sound/soc/codecs/rt5665.c while (!rt5665->component->card->instantiated) { rt5665 4757 sound/soc/codecs/rt5665.c rt5665_calibrate(rt5665); rt5665 4764 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665; rt5665 4768 sound/soc/codecs/rt5665.c rt5665 = devm_kzalloc(&i2c->dev, sizeof(struct rt5665_priv), rt5665 4771 sound/soc/codecs/rt5665.c if (rt5665 == NULL) rt5665 4774 sound/soc/codecs/rt5665.c i2c_set_clientdata(i2c, rt5665); rt5665 4777 sound/soc/codecs/rt5665.c rt5665->pdata = *pdata; rt5665 4779 sound/soc/codecs/rt5665.c rt5665_parse_dt(rt5665, &i2c->dev); rt5665 4781 sound/soc/codecs/rt5665.c for (i = 0; i < ARRAY_SIZE(rt5665->supplies); i++) rt5665 4782 sound/soc/codecs/rt5665.c rt5665->supplies[i].supply = rt5665_supply_names[i]; rt5665 4784 sound/soc/codecs/rt5665.c ret = devm_regulator_bulk_get(&i2c->dev, ARRAY_SIZE(rt5665->supplies), rt5665 4785 sound/soc/codecs/rt5665.c rt5665->supplies); rt5665 4791 sound/soc/codecs/rt5665.c ret = regulator_bulk_enable(ARRAY_SIZE(rt5665->supplies), rt5665 4792 sound/soc/codecs/rt5665.c rt5665->supplies); rt5665 4798 sound/soc/codecs/rt5665.c if (gpio_is_valid(rt5665->pdata.ldo1_en)) { rt5665 4799 sound/soc/codecs/rt5665.c if (devm_gpio_request_one(&i2c->dev, rt5665->pdata.ldo1_en, rt5665 4807 sound/soc/codecs/rt5665.c rt5665->regmap = devm_regmap_init_i2c(i2c, &rt5665_regmap); rt5665 4808 sound/soc/codecs/rt5665.c if (IS_ERR(rt5665->regmap)) { rt5665 4809 sound/soc/codecs/rt5665.c ret = PTR_ERR(rt5665->regmap); rt5665 4815 sound/soc/codecs/rt5665.c regmap_read(rt5665->regmap, RT5665_DEVICE_ID, &val); rt5665 4822 sound/soc/codecs/rt5665.c regmap_read(rt5665->regmap, RT5665_RESET, &val); rt5665 4825 sound/soc/codecs/rt5665.c rt5665->id = CODEC_5666; rt5665 4829 sound/soc/codecs/rt5665.c rt5665->id = CODEC_5665; rt5665 4833 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_RESET, 0); rt5665 4836 sound/soc/codecs/rt5665.c if (rt5665->pdata.in1_diff) rt5665 4837 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_IN1_IN2, rt5665 4839 sound/soc/codecs/rt5665.c if (rt5665->pdata.in2_diff) rt5665 4840 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_IN1_IN2, rt5665 4842 sound/soc/codecs/rt5665.c if (rt5665->pdata.in3_diff) rt5665 4843 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_IN3_IN4, rt5665 4845 sound/soc/codecs/rt5665.c if (rt5665->pdata.in4_diff) rt5665 4846 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_IN3_IN4, rt5665 4850 sound/soc/codecs/rt5665.c if (rt5665->pdata.dmic1_data_pin != RT5665_DMIC1_NULL || rt5665 4851 sound/soc/codecs/rt5665.c rt5665->pdata.dmic2_data_pin != RT5665_DMIC2_NULL) { rt5665 4852 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_GPIO_CTRL_2, rt5665 4854 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_GPIO_CTRL_1, rt5665 4856 sound/soc/codecs/rt5665.c switch (rt5665->pdata.dmic1_data_pin) { rt5665 4858 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_DMIC_CTRL_1, rt5665 4863 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_DMIC_CTRL_1, rt5665 4865 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_GPIO_CTRL_1, rt5665 4874 sound/soc/codecs/rt5665.c switch (rt5665->pdata.dmic2_data_pin) { rt5665 4876 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_DMIC_CTRL_1, rt5665 4881 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, rt5665 4885 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_GPIO_CTRL_1, rt5665 4896 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_HP_LOGIC_CTRL_2, 0x0002); rt5665 4897 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_EJD_CTRL_1, rt5665 4900 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_STO1_DAC_SIL_DET, rt5665 4903 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_HP_CHARGE_PUMP_1, rt5665 4907 sound/soc/codecs/rt5665.c if (rt5665->id == CODEC_5666) { rt5665 4908 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_GPIO_CTRL_2, rt5665 4910 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_GPIO_CTRL_3, rt5665 4915 sound/soc/codecs/rt5665.c regmap_update_bits(rt5665->regmap, RT5665_PWR_ANLG_1, rt5665 4919 sound/soc/codecs/rt5665.c INIT_DELAYED_WORK(&rt5665->jack_detect_work, rt5665 4921 sound/soc/codecs/rt5665.c INIT_DELAYED_WORK(&rt5665->calibrate_work, rt5665 4923 sound/soc/codecs/rt5665.c INIT_DELAYED_WORK(&rt5665->jd_check_work, rt5665 4926 sound/soc/codecs/rt5665.c mutex_init(&rt5665->calibrate_mutex); rt5665 4931 sound/soc/codecs/rt5665.c | IRQF_ONESHOT, "rt5665", rt5665); rt5665 4944 sound/soc/codecs/rt5665.c struct rt5665_priv *rt5665 = i2c_get_clientdata(client); rt5665 4946 sound/soc/codecs/rt5665.c regmap_write(rt5665->regmap, RT5665_RESET, 0);