+
+static int stac92xx_aloopback_put(struct snd_kcontrol *kcontrol,
+               struct snd_ctl_elem_value *ucontrol)
+{
+       struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
+       struct sigmatel_spec *spec = codec->spec;
+       unsigned int dac_mode;
+
+       if (spec->aloopback == ucontrol->value.integer.value[0])
+               return 0;
+
+       spec->aloopback = ucontrol->value.integer.value[0];
+
+
+       dac_mode = snd_hda_codec_read(codec, codec->afg, 0,
+               kcontrol->private_value & 0xFFFF, 0x0);
+
+       if (spec->aloopback) {
+               snd_hda_power_up(codec);
+               dac_mode |= 0x40;
+       } else {
+               snd_hda_power_down(codec);
+               dac_mode &= ~0x40;
+       }
+
+       snd_hda_codec_write_cache(codec, codec->afg, 0,
+               kcontrol->private_value >> 16, dac_mode);
+
+       return 1;
+}
+
+

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1540372

Title:
  [Intel DP35DP, SigmaTel STAC9271D, Green Speaker, Rear] Underruns,
  dropouts or crackling sound

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1540372/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to