Roddie, I've just configured my SoundBlaster Vibra 16pnp card on Friday. I started off sending a posting to this newsgroup, compiled a 2.2 kernel, read plenty of docs and manuals and if you have the some card that is Vibra 16, than I guess you may be experiencing the same problems I have experienced a week before.
The answer is in the kernel docs. I have installed kernel 2.2.9 and looking up ./Documentation/sound/VIBRA16 will be helpful. The following paragraph is from the mentioned file. So, the big problem still remains, because the sb module wants a 8-bit and a 16-bit dma, which we could not allocate for vibra... it supports only two 8-bit dma channels, the second one will be passed to the module as a 16 bit channel, the kernel will yield about that but everything will be okay, trust us. What this means is that, as the 16-bit dma channel you have to pass another 8-bit dma channel that is instead of passing irq 5,6,7 etc. you have to pass irq 0,1,2,3 At some point an error message is displayed, something similar to "Bad dma channel." Simply IGNORE THIS MSG. Everthing works fine once configuration is complete. The message is displayed because the sb module expectes one 8-bit an another 16-bit dma channel, but you have to pass teo 8-bit dma channels to the module. Another tip that might be helpful; if you are using slink, install pciutils package, which provides lspci utility which can be invoked by pnpdump when called with the argument '-c '. Once lspci is installed pnpdump worked fine for me, I did not have to make any further modifications in /etc/isapnp.conf Before invoking pnpdump, do not forget to remove all the sound modules first. This was one of the mistakes I made. If you skip this step some of the irq's might be marked as being used. and pnpdump will not produce the correct results. Using lsmod and rmmod may be helpful. Summary Install pci utils pnpdump -c > /etc/isapnp.conf Install the following modules: sb, sound. soundcore, uart401, opl3 Using insmod what I did for testing was insmod soundcore insmod sound insmod uart401 insmod sb irq=5 dma=1 dma16=3 io=0x220 mpu_io=0x330 insmod opl3 io=0x388 Then cat /dev/sndstat That's all. Send a mail, for further questions.