Lines Matching refs:codec
50 static inline int alc5623_reset(struct snd_soc_codec *codec) in alc5623_reset() argument
52 return snd_soc_write(codec, ALC5623_RESET, 0); in alc5623_reset()
58 struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); in amp_mixer_event() local
64 snd_soc_write(codec, ALC5623_HID_CTRL_INDEX, 0x46); in amp_mixer_event()
68 snd_soc_write(codec, ALC5623_HID_CTRL_DATA, 0xFFFF); in amp_mixer_event()
71 snd_soc_write(codec, ALC5623_HID_CTRL_DATA, 0); in amp_mixer_event()
529 struct snd_soc_codec *codec = codec_dai->codec; in alc5623_set_dai_pll() local
537 snd_soc_update_bits(codec, ALC5623_PWR_MANAG_ADD2, in alc5623_set_dai_pll()
542 reg = snd_soc_read(codec, ALC5623_DAI_CONTROL); in alc5623_set_dai_pll()
578 snd_soc_write(codec, ALC5623_GLOBAL_CLK_CTRL_REG, gbl_clk); in alc5623_set_dai_pll()
579 snd_soc_write(codec, ALC5623_PLL_CTRL, pll_div); in alc5623_set_dai_pll()
580 snd_soc_update_bits(codec, ALC5623_PWR_MANAG_ADD2, in alc5623_set_dai_pll()
584 snd_soc_write(codec, ALC5623_GLOBAL_CLK_CTRL_REG, gbl_clk); in alc5623_set_dai_pll()
607 static int get_coeff(struct snd_soc_codec *codec, int rate) in get_coeff() argument
609 struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec); in get_coeff()
625 struct snd_soc_codec *codec = codec_dai->codec; in alc5623_set_dai_sysclk() local
626 struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec); in alc5623_set_dai_sysclk()
646 struct snd_soc_codec *codec = codec_dai->codec; in alc5623_set_dai_fmt() local
698 return snd_soc_write(codec, ALC5623_DAI_CONTROL, iface); in alc5623_set_dai_fmt()
704 struct snd_soc_codec *codec = dai->codec; in alc5623_pcm_hw_params() local
705 struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec); in alc5623_pcm_hw_params()
709 iface = snd_soc_read(codec, ALC5623_DAI_CONTROL); in alc5623_pcm_hw_params()
731 snd_soc_write(codec, ALC5623_DAI_CONTROL, iface); in alc5623_pcm_hw_params()
733 coeff = get_coeff(codec, rate); in alc5623_pcm_hw_params()
738 dev_dbg(codec->dev, "%s: sysclk=%d,rate=%d,coeff=0x%04x\n", in alc5623_pcm_hw_params()
740 snd_soc_write(codec, ALC5623_STEREO_AD_DA_CLK_CTRL, coeff); in alc5623_pcm_hw_params()
747 struct snd_soc_codec *codec = dai->codec; in alc5623_mute() local
749 u16 mute_reg = snd_soc_read(codec, ALC5623_MISC_CTRL) & ~hp_mute; in alc5623_mute()
754 return snd_soc_write(codec, ALC5623_MISC_CTRL, mute_reg); in alc5623_mute()
772 static void enable_power_depop(struct snd_soc_codec *codec) in enable_power_depop() argument
774 struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec); in enable_power_depop()
776 snd_soc_update_bits(codec, ALC5623_PWR_MANAG_ADD1, in enable_power_depop()
780 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD3, ALC5623_ADD3_POWER_EN); in enable_power_depop()
782 snd_soc_update_bits(codec, ALC5623_MISC_CTRL, in enable_power_depop()
788 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD2, ALC5623_ADD2_POWER_EN); in enable_power_depop()
792 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD1, in enable_power_depop()
795 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD1, in enable_power_depop()
799 snd_soc_update_bits(codec, ALC5623_MISC_CTRL, in enable_power_depop()
805 static int alc5623_set_bias_level(struct snd_soc_codec *codec, in alc5623_set_bias_level() argument
810 enable_power_depop(codec); in alc5623_set_bias_level()
816 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD2, in alc5623_set_bias_level()
818 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD3, in alc5623_set_bias_level()
823 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD2, 0); in alc5623_set_bias_level()
824 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD3, 0); in alc5623_set_bias_level()
825 snd_soc_write(codec, ALC5623_PWR_MANAG_ADD1, 0); in alc5623_set_bias_level()
865 static int alc5623_suspend(struct snd_soc_codec *codec) in alc5623_suspend() argument
867 struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec); in alc5623_suspend()
874 static int alc5623_resume(struct snd_soc_codec *codec) in alc5623_resume() argument
876 struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec); in alc5623_resume()
883 dev_err(codec->dev, "Failed to sync register cache: %d\n", in alc5623_resume()
892 static int alc5623_probe(struct snd_soc_codec *codec) in alc5623_probe() argument
894 struct alc5623_priv *alc5623 = snd_soc_codec_get_drvdata(codec); in alc5623_probe()
895 struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); in alc5623_probe()
897 alc5623_reset(codec); in alc5623_probe()
900 snd_soc_write(codec, ALC5623_ADD_CTRL_REG, in alc5623_probe()
905 snd_soc_write(codec, ALC5623_JACK_DET_CTRL, in alc5623_probe()
911 snd_soc_add_codec_controls(codec, alc5621_vol_snd_controls, in alc5623_probe()
915 snd_soc_add_codec_controls(codec, alc5622_vol_snd_controls, in alc5623_probe()
919 snd_soc_add_codec_controls(codec, alc5623_vol_snd_controls, in alc5623_probe()
926 snd_soc_add_codec_controls(codec, alc5623_snd_controls, in alc5623_probe()