Lines Matching defs:component
45 static inline int alc5623_reset(struct snd_soc_component *component)
47 return snd_soc_component_write(component, ALC5623_RESET, 0);
53 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm);
59 snd_soc_component_write(component, ALC5623_HID_CTRL_INDEX, 0x46);
63 snd_soc_component_write(component, ALC5623_HID_CTRL_DATA, 0xFFFF);
66 snd_soc_component_write(component, ALC5623_HID_CTRL_DATA, 0);
524 struct snd_soc_component *component = codec_dai->component;
532 snd_soc_component_update_bits(component, ALC5623_PWR_MANAG_ADD2,
537 reg = snd_soc_component_read(component, ALC5623_DAI_CONTROL);
573 snd_soc_component_write(component, ALC5623_GLOBAL_CLK_CTRL_REG, gbl_clk);
574 snd_soc_component_write(component, ALC5623_PLL_CTRL, pll_div);
575 snd_soc_component_update_bits(component, ALC5623_PWR_MANAG_ADD2,
579 snd_soc_component_write(component, ALC5623_GLOBAL_CLK_CTRL_REG, gbl_clk);
602 static int get_coeff(struct snd_soc_component *component, int rate)
604 struct alc5623_priv *alc5623 = snd_soc_component_get_drvdata(component);
620 struct snd_soc_component *component = codec_dai->component;
621 struct alc5623_priv *alc5623 = snd_soc_component_get_drvdata(component);
641 struct snd_soc_component *component = codec_dai->component;
693 return snd_soc_component_write(component, ALC5623_DAI_CONTROL, iface);
699 struct snd_soc_component *component = dai->component;
700 struct alc5623_priv *alc5623 = snd_soc_component_get_drvdata(component);
704 iface = snd_soc_component_read(component, ALC5623_DAI_CONTROL);
726 snd_soc_component_write(component, ALC5623_DAI_CONTROL, iface);
728 coeff = get_coeff(component, rate);
733 dev_dbg(component->dev, "%s: sysclk=%d,rate=%d,coeff=0x%04x\n",
735 snd_soc_component_write(component, ALC5623_STEREO_AD_DA_CLK_CTRL, coeff);
742 struct snd_soc_component *component = dai->component;
744 u16 mute_reg = snd_soc_component_read(component, ALC5623_MISC_CTRL) & ~hp_mute;
749 return snd_soc_component_write(component, ALC5623_MISC_CTRL, mute_reg);
767 static void enable_power_depop(struct snd_soc_component *component)
769 struct alc5623_priv *alc5623 = snd_soc_component_get_drvdata(component);
771 snd_soc_component_update_bits(component, ALC5623_PWR_MANAG_ADD1,
775 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD3, ALC5623_ADD3_POWER_EN);
777 snd_soc_component_update_bits(component, ALC5623_MISC_CTRL,
783 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD2, ALC5623_ADD2_POWER_EN);
787 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD1,
790 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD1,
794 snd_soc_component_update_bits(component, ALC5623_MISC_CTRL,
800 static int alc5623_set_bias_level(struct snd_soc_component *component,
805 enable_power_depop(component);
811 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD2,
813 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD3,
818 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD2, 0);
819 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD3, 0);
820 snd_soc_component_write(component, ALC5623_PWR_MANAG_ADD1, 0);
861 static int alc5623_suspend(struct snd_soc_component *component)
863 struct alc5623_priv *alc5623 = snd_soc_component_get_drvdata(component);
870 static int alc5623_resume(struct snd_soc_component *component)
872 struct alc5623_priv *alc5623 = snd_soc_component_get_drvdata(component);
879 dev_err(component->dev, "Failed to sync register cache: %d\n",
888 static int alc5623_probe(struct snd_soc_component *component)
890 struct alc5623_priv *alc5623 = snd_soc_component_get_drvdata(component);
891 struct snd_soc_dapm_context *dapm = snd_soc_component_get_dapm(component);
893 alc5623_reset(component);
896 snd_soc_component_write(component, ALC5623_ADD_CTRL_REG,
901 snd_soc_component_write(component, ALC5623_JACK_DET_CTRL,
907 snd_soc_add_component_controls(component, alc5621_vol_snd_controls,
911 snd_soc_add_component_controls(component, alc5622_vol_snd_controls,
915 snd_soc_add_component_controls(component, alc5623_vol_snd_controls,
922 snd_soc_add_component_controls(component, alc5623_snd_controls,