Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 721b8a29 authored by Alan Horstmann's avatar Alan Horstmann Committed by Jaroslav Kysela
Browse files

[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: default avatarAlan Horstmann <gineera@aspect135.co.uk>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 302e4c2f
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -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 {
	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]);