• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/sound/soc/codecs/

Lines Matching refs:codec

36 /* codec private data */
38 struct snd_soc_codec codec;
96 static int wm8711_add_widgets(struct snd_soc_codec *codec)
98 snd_soc_dapm_new_controls(codec, wm8711_dapm_widgets,
101 snd_soc_dapm_add_routes(codec, intercon, ARRAY_SIZE(intercon));
115 /* codec mclk clock divider coefficients */
165 struct snd_soc_codec *codec = dai->codec;
166 struct wm8711_priv *wm8711 = snd_soc_codec_get_drvdata(codec);
167 u16 iface = snd_soc_read(codec, WM8711_IFACE) & 0xfffc;
172 snd_soc_write(codec, WM8711_SRATE, srate);
186 snd_soc_write(codec, WM8711_IFACE, iface);
193 struct snd_soc_codec *codec = dai->codec;
196 snd_soc_write(codec, WM8711_ACTIVE, 0x0001);
204 struct snd_soc_codec *codec = dai->codec;
207 if (!codec->active) {
209 snd_soc_write(codec, WM8711_ACTIVE, 0x0);
215 struct snd_soc_codec *codec = dai->codec;
216 u16 mute_reg = snd_soc_read(codec, WM8711_APDIGI) & 0xfff7;
219 snd_soc_write(codec, WM8711_APDIGI, mute_reg | 0x8);
221 snd_soc_write(codec, WM8711_APDIGI, mute_reg);
229 struct snd_soc_codec *codec = codec_dai->codec;
230 struct wm8711_priv *wm8711 = snd_soc_codec_get_drvdata(codec);
247 struct snd_soc_codec *codec = codec_dai->codec;
299 snd_soc_write(codec, WM8711_IFACE, iface);
304 static int wm8711_set_bias_level(struct snd_soc_codec *codec,
307 u16 reg = snd_soc_read(codec, WM8711_PWR) & 0xff7f;
311 snd_soc_write(codec, WM8711_PWR, reg);
316 snd_soc_write(codec, WM8711_PWR, reg | 0x0040);
319 snd_soc_write(codec, WM8711_ACTIVE, 0x0);
320 snd_soc_write(codec, WM8711_PWR, 0xffff);
323 codec->bias_level = level;
357 struct snd_soc_codec *codec = socdev->card->codec;
359 snd_soc_write(codec, WM8711_ACTIVE, 0x0);
360 wm8711_set_bias_level(codec, SND_SOC_BIAS_OFF);
367 struct snd_soc_codec *codec = socdev->card->codec;
370 u16 *cache = codec->reg_cache;
376 codec->hw_write(codec->control_data, data, 2);
378 wm8711_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
386 struct snd_soc_codec *codec;
394 socdev->card->codec = wm8711_codec;
395 codec = wm8711_codec;
400 dev_err(codec->dev, "failed to create pcms: %d\n", ret);
404 snd_soc_add_controls(codec, wm8711_snd_controls,
406 wm8711_add_widgets(codec);
437 struct snd_soc_codec *codec = &wm8711->codec;
441 dev_err(codec->dev, "Another WM8711 is registered\n");
446 mutex_init(&codec->mutex);
447 INIT_LIST_HEAD(&codec->dapm_widgets);
448 INIT_LIST_HEAD(&codec->dapm_paths);
450 snd_soc_codec_set_drvdata(codec, wm8711);
451 codec->name = "WM8711";
452 codec->owner = THIS_MODULE;
453 codec->bias_level = SND_SOC_BIAS_OFF;
454 codec->set_bias_level = wm8711_set_bias_level;
455 codec->dai = &wm8711_dai;
456 codec->num_dai = 1;
457 codec->reg_cache_size = WM8711_CACHEREGNUM;
458 codec->reg_cache = &wm8711->reg_cache;
460 memcpy(codec->reg_cache, wm8711_reg, sizeof(wm8711_reg));
462 ret = snd_soc_codec_set_cache_io(codec, 7, 9, control);
464 dev_err(codec->dev, "Failed to set cache I/O: %d\n", ret);
468 ret = wm8711_reset(codec);
470 dev_err(codec->dev, "Failed to issue reset\n");
474 wm8711_dai.dev = codec->dev;
476 wm8711_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
479 reg = snd_soc_read(codec, WM8711_LOUT1V);
480 snd_soc_write(codec, WM8711_LOUT1V, reg | 0x0100);
481 reg = snd_soc_read(codec, WM8711_ROUT1V);
482 snd_soc_write(codec, WM8711_ROUT1V, reg | 0x0100);
484 wm8711_codec = codec;
486 ret = snd_soc_register_codec(codec);
488 dev_err(codec->dev, "Failed to register codec: %d\n", ret);
494 dev_err(codec->dev, "Failed to register DAI: %d\n", ret);
501 snd_soc_unregister_codec(codec);
509 wm8711_set_bias_level(&wm8711->codec, SND_SOC_BIAS_OFF);
511 snd_soc_unregister_codec(&wm8711->codec);
519 struct snd_soc_codec *codec;
526 codec = &wm8711->codec;
527 codec->control_data = spi;
528 codec->dev = &spi->dev;
560 struct snd_soc_codec *codec;
566 codec = &wm8711->codec;
567 codec->hw_write = (hw_write_t)i2c_master_send;
570 codec->control_data = i2c;
572 codec->dev = &i2c->dev;