diff options
author | Alan Horstmann <gineera@aspect135.co.uk> | 2006-05-23 13:29:51 +0200 |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2006-06-22 21:33:57 +0200 |
commit | 721b8a297279276699900a662fa8299232ebc0e8 (patch) | |
tree | 26b007f788400ab9a1ba1775954a5050baa56824 | |
parent | 302e4c2f9e2b9f07c69649782330a61c60001ac4 (diff) | |
download | linux-3.10-721b8a297279276699900a662fa8299232ebc0e8.tar.gz linux-3.10-721b8a297279276699900a662fa8299232ebc0e8.tar.bz2 linux-3.10-721b8a297279276699900a662fa8299232ebc0e8.zip |
[ALSA] ice1712 - Disable AC97 for DMX6fire
Consumer AC97 is not used by the Terratec DMX6fire, but eeprom bit indicates
it is; change the stored value to disable failing consumer mode.
Signed-off-by: Alan Horstmann <gineera@aspect135.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/pci/ice1712/ice1712.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/sound/pci/ice1712/ice1712.c b/sound/pci/ice1712/ice1712.c index 00e565e1db3..aa5a41fecb0 100644 --- a/sound/pci/ice1712/ice1712.c +++ b/sound/pci/ice1712/ice1712.c @@ -2398,13 +2398,14 @@ static int __devinit snd_ice1712_chip_init(struct snd_ice1712 *ice) udelay(200); outb(ICE1712_NATIVE, ICEREG(ice, CONTROL)); udelay(200); - if (ice->eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE && !ice->dxr_enable) { - /* Limit active ADCs and DACs to 6; */ - /* Note: DXR extension not supported */ - pci_write_config_byte(ice->pci, 0x60, 0x2a); - } else { - pci_write_config_byte(ice->pci, 0x60, ice->eeprom.data[ICE_EEP1_CODEC]); - } + if (ice->eeprom.subvendor == ICE1712_SUBDEVICE_DMX6FIRE && + !ice->dxr_enable) + /* Set eeprom value to limit active ADCs and DACs to 6; + * Also disable AC97 as no hardware in standard 6fire card/box + * Note: DXR extensions are not currently supported + */ + ice->eeprom.data[ICE_EEP1_CODEC] = 0x3a; + pci_write_config_byte(ice->pci, 0x60, ice->eeprom.data[ICE_EEP1_CODEC]); pci_write_config_byte(ice->pci, 0x61, ice->eeprom.data[ICE_EEP1_ACLINK]); pci_write_config_byte(ice->pci, 0x62, ice->eeprom.data[ICE_EEP1_I2SID]); pci_write_config_byte(ice->pci, 0x63, ice->eeprom.data[ICE_EEP1_SPDIF]); |