Lines Matching refs:codec

146 static void wait_for_dc_servo(struct snd_soc_codec *codec)  in wait_for_dc_servo()  argument
151 dev_dbg(codec->dev, "Waiting for DC servo...\n"); in wait_for_dc_servo()
155 reg = snd_soc_read(codec, WM9090_DC_SERVO_READBACK_0); in wait_for_dc_servo()
156 dev_dbg(codec->dev, "DC servo status: %x\n", reg); in wait_for_dc_servo()
162 dev_err(codec->dev, "Timed out waiting for DC Servo\n"); in wait_for_dc_servo()
254 struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); in hp_ev() local
255 unsigned int reg = snd_soc_read(codec, WM9090_ANALOGUE_HP_0); in hp_ev()
259 snd_soc_update_bits(codec, WM9090_CHARGE_PUMP_1, in hp_ev()
264 snd_soc_update_bits(codec, WM9090_POWER_MANAGEMENT_1, in hp_ev()
269 snd_soc_write(codec, WM9090_ANALOGUE_HP_0, reg); in hp_ev()
277 snd_soc_write(codec, WM9090_DC_SERVO_0, in hp_ev()
282 wait_for_dc_servo(codec); in hp_ev()
286 snd_soc_write(codec, WM9090_ANALOGUE_HP_0, reg); in hp_ev()
297 snd_soc_write(codec, WM9090_ANALOGUE_HP_0, reg); in hp_ev()
299 snd_soc_write(codec, WM9090_DC_SERVO_0, 0); in hp_ev()
301 snd_soc_update_bits(codec, WM9090_POWER_MANAGEMENT_1, in hp_ev()
305 snd_soc_update_bits(codec, WM9090_CHARGE_PUMP_1, in hp_ev()
422 static int wm9090_add_controls(struct snd_soc_codec *codec) in wm9090_add_controls() argument
424 struct wm9090_priv *wm9090 = snd_soc_codec_get_drvdata(codec); in wm9090_add_controls()
425 struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); in wm9090_add_controls()
433 snd_soc_add_codec_controls(codec, wm9090_controls, in wm9090_add_controls()
442 snd_soc_add_codec_controls(codec, wm9090_in1_se_controls, in wm9090_add_controls()
452 snd_soc_add_codec_controls(codec, wm9090_in2_se_controls, in wm9090_add_controls()
458 snd_soc_write(codec, WM9090_AGC_CONTROL_0 + i, in wm9090_add_controls()
460 snd_soc_update_bits(codec, WM9090_POWER_MANAGEMENT_3, in wm9090_add_controls()
463 snd_soc_update_bits(codec, WM9090_POWER_MANAGEMENT_3, in wm9090_add_controls()
475 static int wm9090_set_bias_level(struct snd_soc_codec *codec, in wm9090_set_bias_level() argument
478 struct wm9090_priv *wm9090 = snd_soc_codec_get_drvdata(codec); in wm9090_set_bias_level()
485 snd_soc_update_bits(codec, WM9090_ANTIPOP2, WM9090_VMID_ENA, in wm9090_set_bias_level()
487 snd_soc_update_bits(codec, WM9090_POWER_MANAGEMENT_1, in wm9090_set_bias_level()
496 if (snd_soc_codec_get_bias_level(codec) == SND_SOC_BIAS_OFF) { in wm9090_set_bias_level()
505 snd_soc_update_bits(codec, WM9090_POWER_MANAGEMENT_1, in wm9090_set_bias_level()
507 snd_soc_update_bits(codec, WM9090_ANTIPOP2, in wm9090_set_bias_level()
518 static int wm9090_probe(struct snd_soc_codec *codec) in wm9090_probe() argument
523 snd_soc_update_bits(codec, WM9090_IN1_LINE_INPUT_A_VOLUME, in wm9090_probe()
526 snd_soc_update_bits(codec, WM9090_IN1_LINE_INPUT_B_VOLUME, in wm9090_probe()
529 snd_soc_update_bits(codec, WM9090_IN2_LINE_INPUT_A_VOLUME, in wm9090_probe()
532 snd_soc_update_bits(codec, WM9090_IN2_LINE_INPUT_B_VOLUME, in wm9090_probe()
535 snd_soc_update_bits(codec, WM9090_SPEAKER_VOLUME_LEFT, in wm9090_probe()
538 snd_soc_update_bits(codec, WM9090_LEFT_OUTPUT_VOLUME, in wm9090_probe()
541 snd_soc_update_bits(codec, WM9090_RIGHT_OUTPUT_VOLUME, in wm9090_probe()
545 snd_soc_update_bits(codec, WM9090_CLOCKING_1, in wm9090_probe()
548 wm9090_add_controls(codec); in wm9090_probe()