3.11.10.7 -stable review patch.  If anyone has any objections, please let me 
know.

------------------

From: Clemens Ladisch <clem...@ladisch.de>

commit 1f91ecc14deea9461aca93273d78871ec4d98fcd upstream.

When selecting the audio output destinations (headphones, FP headphones,
multichannel output), unnecessary I2S channels are digitally muted to
avoid invalid signal levels on the other outputs.

Signed-off-by: Roman Volkov <v1...@mail.ru>
Signed-off-by: Clemens Ladisch <clem...@ladisch.de>
Signed-off-by: Luis Henriques <luis.henriq...@canonical.com>
---
 sound/pci/oxygen/xonar_dg.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/sound/pci/oxygen/xonar_dg.c b/sound/pci/oxygen/xonar_dg.c
index 5519b8f..eb7ad77 100644
--- a/sound/pci/oxygen/xonar_dg.c
+++ b/sound/pci/oxygen/xonar_dg.c
@@ -294,6 +294,16 @@ static int output_switch_put(struct snd_kcontrol *ctl,
                oxygen_write16_masked(chip, OXYGEN_GPIO_DATA,
                                      data->output_sel == 1 ? GPIO_HP_REAR : 0,
                                      GPIO_HP_REAR);
+               oxygen_write8_masked(chip, OXYGEN_PLAY_ROUTING,
+                                    data->output_sel == 0 ?
+                                    OXYGEN_PLAY_MUTE01 :
+                                    OXYGEN_PLAY_MUTE23 |
+                                    OXYGEN_PLAY_MUTE45 |
+                                    OXYGEN_PLAY_MUTE67,
+                                    OXYGEN_PLAY_MUTE01 |
+                                    OXYGEN_PLAY_MUTE23 |
+                                    OXYGEN_PLAY_MUTE45 |
+                                    OXYGEN_PLAY_MUTE67);
        }
        mutex_unlock(&chip->mutex);
        return changed;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to