Lines Matching refs:component

341 	struct snd_soc_component *component = codec_dai->component;  in wm8940_set_dai_fmt()  local
342 u16 iface = snd_soc_component_read(component, WM8940_IFACE) & 0xFE67; in wm8940_set_dai_fmt()
343 u16 clk = snd_soc_component_read(component, WM8940_CLOCK) & 0x1fe; in wm8940_set_dai_fmt()
354 snd_soc_component_write(component, WM8940_CLOCK, clk); in wm8940_set_dai_fmt()
387 snd_soc_component_write(component, WM8940_IFACE, iface); in wm8940_set_dai_fmt()
397 struct snd_soc_component *component = dai->component; in wm8940_i2s_hw_params() local
398 struct wm8940_priv *priv = snd_soc_component_get_drvdata(component); in wm8940_i2s_hw_params()
399 u16 iface = snd_soc_component_read(component, WM8940_IFACE) & 0xFD9F; in wm8940_i2s_hw_params()
400 u16 addcntrl = snd_soc_component_read(component, WM8940_ADDCNTRL) & 0xFFF1; in wm8940_i2s_hw_params()
401 u16 companding = snd_soc_component_read(component, in wm8940_i2s_hw_params()
435 ret = snd_soc_component_write(component, WM8940_ADDCNTRL, addcntrl); in wm8940_i2s_hw_params()
455 ret = snd_soc_component_write(component, WM8940_COMPANDINGCTL, companding); in wm8940_i2s_hw_params()
458 ret = snd_soc_component_write(component, WM8940_IFACE, iface); in wm8940_i2s_hw_params()
466 struct snd_soc_component *component = dai->component; in wm8940_mute() local
467 u16 mute_reg = snd_soc_component_read(component, WM8940_DAC) & 0xffbf; in wm8940_mute()
472 return snd_soc_component_write(component, WM8940_DAC, mute_reg); in wm8940_mute()
475 static int wm8940_set_bias_level(struct snd_soc_component *component, in wm8940_set_bias_level() argument
478 struct wm8940_priv *wm8940 = snd_soc_component_get_drvdata(component); in wm8940_set_bias_level()
480 u16 pwr_reg = snd_soc_component_read(component, WM8940_POWER1) & 0x1F0; in wm8940_set_bias_level()
488 val = snd_soc_component_read(component, WM8940_OUTPUTCTL); in wm8940_set_bias_level()
489 ret = snd_soc_component_write(component, WM8940_OUTPUTCTL, val | 0x2); in wm8940_set_bias_level()
493 ret = snd_soc_component_write(component, WM8940_POWER1, pwr_reg | 0x1); in wm8940_set_bias_level()
498 ret = snd_soc_component_write(component, WM8940_POWER1, pwr_reg | 0x1); in wm8940_set_bias_level()
501 if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_OFF) { in wm8940_set_bias_level()
504 dev_err(component->dev, "Failed to sync cache: %d\n", ret); in wm8940_set_bias_level()
512 ret = snd_soc_component_write(component, WM8940_POWER1, pwr_reg | 0x2); in wm8940_set_bias_level()
515 ret = snd_soc_component_write(component, WM8940_POWER1, pwr_reg); in wm8940_set_bias_level()
585 struct snd_soc_component *component = codec_dai->component; in wm8940_set_dai_pll() local
589 reg = snd_soc_component_read(component, WM8940_POWER1); in wm8940_set_dai_pll()
590 snd_soc_component_write(component, WM8940_POWER1, reg & 0x1df); in wm8940_set_dai_pll()
594 reg = snd_soc_component_read(component, WM8940_CLOCK); in wm8940_set_dai_pll()
595 snd_soc_component_write(component, WM8940_CLOCK, reg & 0x0ff); in wm8940_set_dai_pll()
597 snd_soc_component_write(component, WM8940_PLLN, (1 << 7)); in wm8940_set_dai_pll()
604 snd_soc_component_write(component, WM8940_PLLN, in wm8940_set_dai_pll()
607 snd_soc_component_write(component, WM8940_PLLN, in wm8940_set_dai_pll()
609 snd_soc_component_write(component, WM8940_PLLK1, pll_div.k >> 18); in wm8940_set_dai_pll()
610 snd_soc_component_write(component, WM8940_PLLK2, (pll_div.k >> 9) & 0x1ff); in wm8940_set_dai_pll()
611 snd_soc_component_write(component, WM8940_PLLK3, pll_div.k & 0x1ff); in wm8940_set_dai_pll()
613 reg = snd_soc_component_read(component, WM8940_POWER1); in wm8940_set_dai_pll()
614 snd_soc_component_write(component, WM8940_POWER1, reg | 0x020); in wm8940_set_dai_pll()
617 reg = snd_soc_component_read(component, WM8940_CLOCK); in wm8940_set_dai_pll()
618 snd_soc_component_write(component, WM8940_CLOCK, reg | 0x100); in wm8940_set_dai_pll()
626 struct snd_soc_component *component = codec_dai->component; in wm8940_set_dai_clkdiv() local
632 reg = snd_soc_component_read(component, WM8940_CLOCK) & 0xFFE3; in wm8940_set_dai_clkdiv()
633 ret = snd_soc_component_write(component, WM8940_CLOCK, reg | (div << 2)); in wm8940_set_dai_clkdiv()
636 reg = snd_soc_component_read(component, WM8940_CLOCK) & 0xFF1F; in wm8940_set_dai_clkdiv()
637 ret = snd_soc_component_write(component, WM8940_CLOCK, reg | (div << 5)); in wm8940_set_dai_clkdiv()
640 reg = snd_soc_component_read(component, WM8940_GPIO) & 0xFFCF; in wm8940_set_dai_clkdiv()
641 ret = snd_soc_component_write(component, WM8940_GPIO, reg | (div << 4)); in wm8940_set_dai_clkdiv()
681 struct snd_soc_component *codec = dai->component; in wm8940_update_clocks()
708 struct snd_soc_component *codec = dai->component; in wm8940_set_dai_sysclk()
757 static int wm8940_probe(struct snd_soc_component *component) in wm8940_probe() argument
759 struct wm8940_setup_data *pdata = component->dev->platform_data; in wm8940_probe()
768 reg = snd_soc_component_read(component, WM8940_SOFTRESET); in wm8940_probe()
770 dev_err(component->dev, "Wrong wm8940 chip ID: 0x%x\n", reg); in wm8940_probe()
774 ret = wm8940_reset(component); in wm8940_probe()
776 dev_err(component->dev, "Failed to issue reset\n"); in wm8940_probe()
780 snd_soc_component_force_bias_level(component, SND_SOC_BIAS_STANDBY); in wm8940_probe()
782 ret = snd_soc_component_write(component, WM8940_POWER1, 0x180); in wm8940_probe()
787 reg = snd_soc_component_read(component, WM8940_OUTPUTCTL); in wm8940_probe()
788 ret = snd_soc_component_write(component, WM8940_OUTPUTCTL, reg | pdata->vroi); in wm8940_probe()