]> err.no Git - linux-2.6/blobdiff - sound/soc/codecs/wm9712.c
Merge branches 'release', 'acpica', 'bugzilla-10224', 'bugzilla-9772', 'bugzilla...
[linux-2.6] / sound / soc / codecs / wm9712.c
index 590baea3c4c3d9d3a2666025615b27f3c506545c..d2d79e182a45b1bc44c79e6278043a0ae147a9cf 100644 (file)
@@ -176,7 +176,8 @@ static int wm9712_add_controls(struct snd_soc_codec *codec)
  * the codec only has a single control that is shared by both channels.
  * This makes it impossible to determine the audio path.
  */
-static int mixer_event (struct snd_soc_dapm_widget *w, int event)
+static int mixer_event(struct snd_soc_dapm_widget *w,
+       struct snd_kcontrol *k, int event)
 {
        u16 l, r, beep, line, phone, mic, pcm, aux;
 
@@ -580,22 +581,14 @@ static int wm9712_dapm_event(struct snd_soc_codec *codec, int event)
 
        switch (event) {
        case SNDRV_CTL_POWER_D0: /* full On */
-               /* liam - maybe enable thermal shutdown */
-               reg = ac97_read(codec, AC97_EXTENDED_MID) & 0xdfff;
-               ac97_write(codec, AC97_EXTENDED_MID, reg);
-               break;
        case SNDRV_CTL_POWER_D1: /* partial On */
        case SNDRV_CTL_POWER_D2: /* partial On */
                break;
        case SNDRV_CTL_POWER_D3hot: /* Off, with power */
-               /* enable master bias and vmid */
-               reg = ac97_read(codec, AC97_EXTENDED_MID) & 0xbbff;
-               ac97_write(codec, AC97_EXTENDED_MID, reg);
                ac97_write(codec, AC97_POWERDOWN, 0x0000);
                break;
        case SNDRV_CTL_POWER_D3cold: /* Off, without power */
                /* disable everything including AC link */
-               ac97_write(codec, AC97_EXTENDED_MID, 0xffff);
                ac97_write(codec, AC97_EXTENDED_MSTATUS, 0xffff);
                ac97_write(codec, AC97_POWERDOWN, 0xffff);
                break;