On 04/11/2007 10:00 PM, Rask Ingemann Lambertsen wrote:
The root cause is that snd_sbdsp_create() only supports dma16 set to 5, 6 or 7. Any other value is changed to -1, which is what happens in this case. It is a hack to avoid trouble with recent SoundBlaster 16 cards (Vibra16VX)
Well, let's call them "relatively" recent... :-)
using two 8-bit DMA channels, which the SB16 doesn't support.
Fix: Use only dma8.
Is it perhaps possible to cheese around it using
"if (hardware == SB_HW_JAZZ16)"
type constructs (and maybe some "if (dma > 3)" elsewhere if needed)? If this would be a small change, maybe's it's worth it. And maybe not.
I'm at the moment playing with a few different cards due to them having a mitsumi CD-ROM controller and me just having dug up a mitsumi CD-ROM but I'll wait for a next complete iteration of the jazz16 patch and then give it a once-over and some testing again (feel free to ask for specifc tests as well).
Then after that you/we should seriously start poking Belay...
Rene.