[PATCH] PCI: quirk for asus a8v and a8v delux motherboards
On ASUS A8V and A8V Deluxe boards, the onboard AC97 audio controller and MC97 modem controller are deactivated when a second PCI soundcard is present. This patch enables them. Signed-off-by: Bauke Jan Douma <bjdouma@xs4all.nl> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Родитель
3c0a654e39
Коммит
e5548e960f
|
@ -1074,6 +1074,37 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_651, quirk_sis_96x_
|
|||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_735, quirk_sis_96x_compatible );
|
||||
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_503, quirk_sis_503 );
|
||||
/*
|
||||
* On ASUS A8V and A8V Deluxe boards, the onboard AC97 audio controller
|
||||
* and MC97 modem controller are disabled when a second PCI soundcard is
|
||||
* present. This patch, tweaking the VT8237 ISA bridge, enables them.
|
||||
* -- bjd
|
||||
*/
|
||||
static void __init asus_hides_ac97_lpc(struct pci_dev *dev)
|
||||
{
|
||||
u8 val;
|
||||
int asus_hides_ac97 = 0;
|
||||
|
||||
if (likely(dev->subsystem_vendor == PCI_VENDOR_ID_ASUSTEK)) {
|
||||
if (dev->device == PCI_DEVICE_ID_VIA_8237)
|
||||
asus_hides_ac97 = 1;
|
||||
}
|
||||
|
||||
if (!asus_hides_ac97)
|
||||
return;
|
||||
|
||||
pci_read_config_byte(dev, 0x50, &val);
|
||||
if (val & 0xc0) {
|
||||
pci_write_config_byte(dev, 0x50, val & (~0xc0));
|
||||
pci_read_config_byte(dev, 0x50, &val);
|
||||
if (val & 0xc0)
|
||||
printk(KERN_INFO "PCI: onboard AC97/MC97 devices continue to play 'hide and seek'! 0x%x\n", val);
|
||||
else
|
||||
printk(KERN_INFO "PCI: enabled onboard AC97/MC97 devices\n");
|
||||
}
|
||||
}
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8237, asus_hides_ac97_lpc );
|
||||
|
||||
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_961, quirk_sis_96x_smbus );
|
||||
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_962, quirk_sis_96x_smbus );
|
||||
|
|
Загрузка…
Ссылка в новой задаче