OSS support for ICH5 sound
Hi
I basically just added the ID's for the ICH5 sound, and it seems to be working fine here. This is against bk7, I haven't had time to verify with bk11 yet, sorry.
Regards,
Signature · 1 line
Martin Schlemmer
sound/oss/i810_audio.c renamed from sound/oss/i810_audio.c.orig +11 -3
@@ -115,6 +114,9 @@#ifndef PCI_DEVICE_ID_INTEL_ICH4 #define PCI_DEVICE_ID_INTEL_ICH4 0x24c5#endif +#ifndef PCI_DEVICE_ID_INTEL_ICH5 +#define PCI_DEVICE_ID_INTEL_ICH5 0x24d5 +#endif #ifndef PCI_DEVICE_ID_INTEL_440MX #define PCI_DEVICE_ID_INTEL_440MX 0x7195#endif
@@ -270,6 +272,7 @@INTELICH2 ,INTELICH3 ,INTELICH4 , +INTELICH5 ,SI7012 ,NVIDIA_NFORCE , AMD768,
@@ -283,6 +286,7 @@"Intel ICH2" ,"Intel ICH3" ,"Intel ICH4" , +"Intel ICH5" ,"SiS 7012" ,"NVIDIA nForce Audio" , "AMD 768",
@@ -301,7 +306,8 @@ { 1, 0x0000 }, /* INTEL440MX */ { 1, 0x0000 }, /* INTELICH2 */ { 2, 0x0000 }, /* INTELICH3 */ - { 3, 0x0003 }, /* INTELICH4 */ + { 3, 0x0003 }, /* INTELICH4 */ + { 3, 0x0003 }, /* INTELICH5 */ /*@FIXME to be verified*/ { 2, 0x0000 }, /* SI7012 */ /*@FIXME to be verified*/ { 2, 0x0000 }, /* NVIDIA_NFORCE */ /*@FIXME to be verified*/ { 2, 0x0000 }, /* AMD768 */
@@ -321,6 +326,8 @@ PCI_ANY_ID, PCI_ANY_ID, 0, 0, INTELICH3}, {PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, INTELICH4}, + {PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH5, + PCI_ANY_ID, PCI_ANY_ID, 0, 0, INTELICH5}, {PCI_VENDOR_ID_SI, PCI_DEVICE_ID_SI_7012, PCI_ANY_ID, PCI_ANY_ID, 0, 0, SI7012}, {PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_MCP1_AUDIO,
@@ -2791,7 +2799,7 @@*/ /* see i810_ac97_init for the next 7 lines (jsaw) */ inw (card->ac97base); -if ((card->pci_id ==PCI_DEVICE_ID_INTEL_ICH4 ) +if ((card->pci_id ==PCI_DEVICE_ID_INTEL_ICH4 || card->pci_id ==PCI_DEVICE_ID_INTEL_ICH5 ) && (card->use_mmio)) { primary_codec_id = (int )readl (card->iobase_mmio +SDM ) &0x3 ; printk(KERN_INFO "i810_audio: Primary codec has ID %d\n",
@@ -2861,7 +2869,7 @@possible IO channels. Bit 0:1 of SDM then holds the last codec ID spoken to. */ -if ((card->pci_id ==PCI_DEVICE_ID_INTEL_ICH4 ) +if ((card->pci_id ==PCI_DEVICE_ID_INTEL_ICH4 || card->pci_id ==PCI_DEVICE_ID_INTEL_ICH5 ) && (card->use_mmio)) { ac97_id = (int )readl (card->iobase_mmio +SDM ) &0x3 ; printk(KERN_INFO "i810_audio: Connection %d with codec id %d\n",
Quoted 5 lines · Martin Schlemmer
Hi
I basically just added the ID's for the ICH5 sound, and it seems to be working fine here. This is against bk7, I haven't had time to verify with bk11 yet, sorry.
Unfortunately this doesn't work on all ICH5s out there. At the very minimum, for now, it would be nice to match up ich5 and codec pairs, as codec differentiation seems to be what stops this patch from working on all ICH5.
Jeff
Quoted 5 lines · Jeff Garzik
Unfortunately this doesn't work on all ICH5s out there. At the very minimum, for now, it would be nice to match up ich5 and codec pairs, as codec differentiation seems to be what stops this patch from working on all ICH5.
Hmm, right.
Anybody working on getting support for the 875 Chipset into 2.5? Can I send a 'lspci -vv' to help ? I have a Asus P4C800 here (Intel 875p), so I can do some testing if need be.
Regards,
Signature · 1 line
Martin Schlemmer