Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | Running sound cards on VIA chipsets |
| 2 | |
| 3 | o There are problems with VIA chipsets and sound cards that appear to |
| 4 | lock the hardware solidly. Test programs under DOS have verified the |
| 5 | problem exists on at least some (but apparently not all) VIA boards |
| 6 | |
| 7 | o VIA have so far failed to bother to answer support mail on the subject |
| 8 | so if you are a VIA engineer feeling aggrieved as you read this |
| 9 | document go chase your own people. If there is a workaround please |
| 10 | let us know so we can implement it. |
| 11 | |
| 12 | |
| 13 | Certain patterns of ISA DMA access used for most PC sound cards cause the |
| 14 | VIA chipsets to lock up. From the collected reports this appears to cover a |
| 15 | wide range of boards. Some also lock up with sound cards under Win* as well. |
| 16 | |
| 17 | Linux implements a workaround providing your chipset is PCI and you compiled |
| 18 | with PCI Quirks enabled. If so you will see a message |
| 19 | "Activating ISA DMA bug workarounds" |
| 20 | |
| 21 | during booting. If you have a VIA PCI chipset that hangs when you use the |
| 22 | sound and is not generating this message even with PCI quirks enabled |
| 23 | please report the information to the linux-kernel list (see REPORTING-BUGS). |
| 24 | |
| 25 | If you are one of the tiny number of unfortunates with a 486 ISA/VLB VIA |
| 26 | chipset board you need to do the following to build a special kernel for |
| 27 | your board |
| 28 | |
| 29 | edit linux/include/asm-i386/dma.h |
| 30 | |
| 31 | change |
| 32 | |
| 33 | #define isa_dma_bridge_buggy (0) |
| 34 | |
| 35 | to |
| 36 | |
| 37 | #define isa_dma_bridge_buggy (1) |
| 38 | |
| 39 | and rebuild a kernel without PCI quirk support. |
| 40 | |
| 41 | |
| 42 | Other than this particular glitch the VIA [M]VP* chipsets appear to work |
| 43 | perfectly with Linux. |