Somewhere in the previous century I posted about my struggle with
Linux+SCSI+Sound (see 'BAD: reproducible lockup with SCSI + SOUND on 2.2 and
2.3' Mon, 27 Dec 1999 23:55:42 +0100), but saw no response on the list. I think
I may have found the solution for my - and probably also others - problems.
The problems seem to be caused by the mediocre ISA DMA capabilities of the
Intel Triton I chipset which is used on my (Intel) motherboard. The kernel
already provides a mechanism for working around DMA problems with some VIA
chipsets, so I enabled these workarounds on my system. Since I'm still typing
to the sound of music (no, not the musical) accompanied by the whirr of my
CD-RW it seems to work. Sound is a bit garbled, but at least is does not hang.
A reshuffle in DMA and interrupt priorities might fix the sound garbling (or it
might not), but that is something for a later date and less early hour.
Cheers//Frank
Here's a simple patch (against Linux-2.2.14) for the DMA fix:
*** linux/drivers/pci/quirks.c.org Wed Jan 5 04:47:10 2000
--- linux/drivers/pci/quirks.c Wed Jan 5 04:49:50 2000
***************
*** 198,207 ****
{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82441, quirk_passive_release, 0x00 },
/*
* Its not totally clear which chipsets are the problematic ones
! * This is the 82C586 variants.
*/
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_0, quirk_isa_dma_hangs, 0x00 },
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C596_0, quirk_isa_dma_hangs, 0x00 },
};
__initfunc(void pci_quirks_init(void))
--- 198,209 ----
{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82441, quirk_passive_release, 0x00 },
/*
* Its not totally clear which chipsets are the problematic ones
! * This is the 82C586 variants. The Intel Triton I chipset seems to
! * have the same problems.
*/
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_0, quirk_isa_dma_hangs, 0x00 },
{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C596_0, quirk_isa_dma_hangs, 0x00 },
+ { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82437, quirk_isa_dma_hangs, 0x00 },
};
__initfunc(void pci_quirks_init(void))
--
WWWWW ________________________
## o o\ / Frank de Lange \
}# \| / +31-70-3712708 day \
##---# _/ +31-320-252965 night \
#### \ frank.de.lange@inet.kpn.com /
\ frank@unternet.org /
--------------------------
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/