diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2008-01-18 03:18:32 -0500 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-01-31 11:30:04 -0500 |
commit | e0059549345903195d6eb796c22048204c40a785 (patch) | |
tree | 42ad0eda51c80842101c2223fb307f6ffe0e5c2e /sound/pci | |
parent | c2353a0826d2b8fe9f5c6a6aca99149e4ee7b196 (diff) |
[ALSA] oxygen: fix playback routing
The default playback routing must be 0xe4, not 0xe1; the front and
surround DACs were exchanged.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/pci')
-rw-r--r-- | sound/pci/oxygen/oxygen_lib.c | 2 | ||||
-rw-r--r-- | sound/pci/oxygen/oxygen_mixer.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/sound/pci/oxygen/oxygen_lib.c b/sound/pci/oxygen/oxygen_lib.c index 79e7c16c71ff..3e61f94ec2e3 100644 --- a/sound/pci/oxygen/oxygen_lib.c +++ b/sound/pci/oxygen/oxygen_lib.c | |||
@@ -214,7 +214,7 @@ static void __devinit oxygen_init(struct oxygen *chip) | |||
214 | oxygen_write16(chip, OXYGEN_I2S_C_FORMAT, 0x010a); | 214 | oxygen_write16(chip, OXYGEN_I2S_C_FORMAT, 0x010a); |
215 | oxygen_set_bits32(chip, OXYGEN_SPDIF_CONTROL, OXYGEN_SPDIF_RATE_MASK); | 215 | oxygen_set_bits32(chip, OXYGEN_SPDIF_CONTROL, OXYGEN_SPDIF_RATE_MASK); |
216 | oxygen_write32(chip, OXYGEN_SPDIF_OUTPUT_BITS, chip->spdif_bits); | 216 | oxygen_write32(chip, OXYGEN_SPDIF_OUTPUT_BITS, chip->spdif_bits); |
217 | oxygen_write16(chip, OXYGEN_PLAY_ROUTING, 0xe100); | 217 | oxygen_write16(chip, OXYGEN_PLAY_ROUTING, 0xe400); |
218 | oxygen_write8(chip, OXYGEN_REC_ROUTING, 0x10); | 218 | oxygen_write8(chip, OXYGEN_REC_ROUTING, 0x10); |
219 | oxygen_write8(chip, OXYGEN_ADC_MONITOR, 0x00); | 219 | oxygen_write8(chip, OXYGEN_ADC_MONITOR, 0x00); |
220 | oxygen_write8(chip, OXYGEN_A_MONITOR_ROUTING, 0xe4); | 220 | oxygen_write8(chip, OXYGEN_A_MONITOR_ROUTING, 0xe4); |
diff --git a/sound/pci/oxygen/oxygen_mixer.c b/sound/pci/oxygen/oxygen_mixer.c index fae7c0f060a0..6fd2a594e89e 100644 --- a/sound/pci/oxygen/oxygen_mixer.c +++ b/sound/pci/oxygen/oxygen_mixer.c | |||
@@ -121,7 +121,7 @@ static int upmix_get(struct snd_kcontrol *ctl, struct snd_ctl_elem_value *value) | |||
121 | void oxygen_update_dac_routing(struct oxygen *chip) | 121 | void oxygen_update_dac_routing(struct oxygen *chip) |
122 | { | 122 | { |
123 | static const unsigned int reg_values[3] = { | 123 | static const unsigned int reg_values[3] = { |
124 | 0xe100, /* front <- 0, surround <- 1, center <- 2, back <- 3 */ | 124 | 0xe400, /* front <- 0, surround <- 1, center <- 2, back <- 3 */ |
125 | 0xe000, /* front <- 0, surround <- 0, center <- 2, back <- 3 */ | 125 | 0xe000, /* front <- 0, surround <- 0, center <- 2, back <- 3 */ |
126 | 0x2000 /* front <- 0, surround <- 0, center <- 2, back <- 0 */ | 126 | 0x2000 /* front <- 0, surround <- 0, center <- 2, back <- 0 */ |
127 | }; | 127 | }; |
@@ -135,7 +135,7 @@ void oxygen_update_dac_routing(struct oxygen *chip) | |||
135 | else if (channels == OXYGEN_PLAY_CHANNELS_8) | 135 | else if (channels == OXYGEN_PLAY_CHANNELS_8) |
136 | reg_value = 0x6c00; /* surround <- 3, back <- 1 */ | 136 | reg_value = 0x6c00; /* surround <- 3, back <- 1 */ |
137 | else | 137 | else |
138 | reg_value = 0xe100; | 138 | reg_value = 0xe400; |
139 | oxygen_write16_masked(chip, OXYGEN_PLAY_ROUTING, reg_value, 0xff00); | 139 | oxygen_write16_masked(chip, OXYGEN_PLAY_ROUTING, reg_value, 0xff00); |
140 | } | 140 | } |
141 | 141 | ||