[BL] BL2 sound device drivers not being created - kernel module bug
sindi keesan
keesan at sdf.lonestar.org
Sat Sep 4 12:08:13 EDT 2004
My SB16 cards will play CD audio but three different wav playing programs
complain about audio size buffer or ioctl devices and it appears to have
something to do with DMA size buffer not being set properly and /dev/dsp
(none of which I understand). Someone said after a lot of experimenting
his problems suddenly fixed themselves and the /dev/dsp suddenly created
itself and it had something to do with /audio/dev (which he thought
disappeared somehow). Lots of confused people dealing with this problem.
Problems occurred with SB16 and its imitators ESS 1370 and 1371, which use
the sb module, but not with a PCI SB card.
Someone else reported that it worked with kernel 2.2.13 but not some later
kernels and by 2.3.something it was working again - some sort of kernel
bug. But I used the same kernel for ESS as for SB so perhaps the module
itself has a bug?
Someone else said he followed instructions for creating the dsp files but
did not say where he got them.
I looked at /dev/dsp on my computers with SB16 and on a computer where
sound works that has ESS SOLO sound chip and module and on my computer the
devices audio and audio1 (for a second soundcard) are there but dsp and
dsp1 have a 0 in the fourth column where the working computer has a 14 and
so do the audio devices audio and audio1.
I looked in my big 1995 reference book and there is a section on Creating
Device Files.
The book says I should have dsp pointing to dsp0, dsp0, dsp1, and the same
for audio. I have audio and audio1 (which look identical) but no audio0,
and I have a 0 dsp and no dsp0 or dsp1. Looks like something got messed
up somehow. Some time since 1995 a fourth column also got added.
On the good computer dsp entry has root sys and on mine it has root root.
crw-rw-rw 1 root 14, 3 Aug 22 00:01 dsp0 - in the book
I don't have this file at all.
crw-rw-rw- 1 root sys 14, 4 Aug 22 00:01 audio - on my computer (works)
'The first time the kernel sound driver is configured you need to create
the sound device files. Cut the short shell script from the end of the
file Readme.linux in the directory /usr/src/linux/drivers/sound and run it
as user root.'
This is supposed to replace existing incorrect device files with correct
ones.
I don't have a kernel sound driver, do I? I am using bare.i kernel.
Maybe the module is not working correctly for this SB card.
I don't have the drivers directory - is this part of the kernel source?
If so, could Steven or someone else with a full distribution possibly pick
out that script or at least tell me where to look for it?
'Some older Linux distributions [older than 1995 - but I have SW71]
provided install scripts which created incorrect sound device files. You
may also have a /dev/MAKEDEV script for creating device files. Using the
script included with the kernel sound driver is preferred since it should
always be up to date with the latest supported sound devices'.
For SB16 and /dev/dsp I don't think this matters. MAKEDEV is in devs.tgz
and I will try it but I need to explodepkg devs.tgz to get it. (The
package does not seem to include the psd device itself). Perhaps James or
Steven would like to post this file if it works for me, and something
could be added to the BL2 FAQ about the 2.2.14 kernel being buggy for
sound with sb.o (since that is what most of our sound discussion has been
about).
Ron, are your SB16 cards PCI?
dsp is supposed to be a link to dsp0 and there are no dsp0 or dsp1. audio
should be a link to audio0 but I have audio set up to look like audio0
should look, and no audio0 and I have audio1. Is that what was used to
play the audio CD with workbone (which worked, amazingly).
This looks incorrect to me. I hope /MAKEDEV can fix it.
Can I or modify these files manually to match what is in the book (plus
adding the column with sys)? Looks like I need to assign root, sys, and
two numbers and a name. I have the list of what they should be (on the
other computer). Or I suppose I could plug in an ESS SOLO card and run
esssolo1.o and maybe that will make the files for me. Might have been
what miraculously helped someone else who was experimenting with this.
keesan at sdf.lonestar.org
SDF Public Access UNIX System - http://sdf.lonestar.org
More information about the BasLinux
mailing list