Red Hat Bugzilla – Bug 32723
No Bass on Sound Blaster Live (emu10k1 chip) on 2.4.x kernel
Last modified: 2007-04-18 12:32:19 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.76 [en] (X11; U; Linux 2.4.2-0.1.28 i586)
The Tone control is not present in the Sound Blaster Live module in the 2.4
kernel... Therefore there is no bass while playing sounds... such as
Tried both OSS and ESOUND.
Steps to Reproduce:
1. load a stock RPM kernel (say 2.4.2-0.1.28)
2. play a sound (say in xmms)
3. no BASS!
(also no tone control in aumix)
Actual Results: NO BASS
Expected Results: Normal Sounding MP3s
I was told that if I added a -DTONE_CONTROL to the EXTRA_CFLAGS in the
Makefile in /usr/src/linux-2.4/drivers/sound/emu10k1 ... that it fixes the
While this is an interesting workaround.. I don't think that RedHat would
release software in which to make my soundcard work properly I have to
recompile kernel modules. :)
BTW, IT DOES WORK! (at least it did on the original kernel that came with
Hey, in the mean time.. is there any way to compile ONLY ONE kernel module?
or DO I have to go through the whole process and just not compile the
kernel, only modules..
Sun Microsystems - RC Americas
Understand that TONE_CONTROL breaks some cards. Probably needs to be
recoded as a module option.
ok..... a kernel module option would be cool...
how do I only compile the emu10k1 module...
here are the steps I generally follow:
(after installing the latest kernel from up2date)
# cd /usr/src/linux-2.4
# make mrproper
# make menuconfig
(Load Alternate configuration: configs/kernel-2.4.2-i586.config)
(SAVE & EXIT)
# vi drivers/sound/emu10k1/Makefile
(add the EXTRA_CFLAGS += -DTONE_CONTROL near the top)
# make dep
*** OK RIGHT HERE IS WHERE I NEED HELP ***
# make modules && make modules_install
(this takes forever.... I would like to ONLY make the emu10k1 module.. I realize
this has nothing to do with the bug, but it would help as new kernels come out)
# rmmod emu10k1
# modprobe emu10k1
(And voila... bass is back!)
Unfortionatly the current "make" system of the kernel does not facilitate for
oh well... maybe I just need a faster CPU :)
how much work would it be to make it a module option.. I would be willing to
test it if you let me know where to get it.
Doing the sourcecode changes seems to be about 30 minutes of work.
I cannot do the testing as I don't have the hardware......
Now to find those 30 minutes :)
Created attachment 15065 [details]
Untested patch to make the makefile hack a module option
It looks like you found the 30 mins.. and now its my turn. However, you will
have to excuse my ignorance here... I have never really used a patch before (I
usually just download the new source)
I assume I can do the following...
(from fresh code)
# cd /usr/src/
# ln -s linux-2.4 linux
(looks like this is necessary from the path at the top?)
# patch -p0 < /tmp/emu10k1.patch
(this is a SWAG on what I need to do)
Then re-do the make modules && make modules_install...
then add something like this to /etc/modules.conf
options emu10k1 tone_control=1
If you can let me know if this is correct.. I can test to see if it all compiles
and works (modprobe).. but I wont be able to REALLY test it till I get home (as
it is hard to hear my speakers from work :) )
You don't need to make the symlink if you use the "-p1" instead of "-p0" and
run patch in /usr/src/linux-2.4
The module-options look correct.
Debugging this remotely is indeed hard; Debugging xservers by using webcams
is something that we occasionally do however ;)
ok... I broke down and read the manpage... I also had an issue with lynx
wrapping the lines.. it is very icky to XHOST netscape through an SSH tunnel oer
# cd /usr/src/linux-2.4/drivers/sound/emu10k1
# patch -b -i /tmp/emu10k1.patch
now compiling (nap time)
hmmm... don't get me started on Xservers :) I thought it was pretty cool when
wolverine said I had a laptop LCD and that XXX was the horiz/vert sync rate...
and automatically picked the right resolution 1024x768x16 (and tested OK).. but
wont start... I end up having to run Xconfigurator and choose a Multisync
monitor bla bla.. then it works fine.... if I dont for some reason the X server
thinks that 1024x768 is outside scan range or something... but it tests fine
during the intall? .. btw, how do you get the GOOD monitor probe.. the one that
Xconfigurator uses sucks, the one during install kicks ass. (but then this is
not really related is it) :)
/me does kernels, not xservers ;)
(aren't you the lucky one)
Your patch works!! I tried it without the tone_control option and it sounded
tinny.. and was lacking the controls for bass and treble in aumix...
I fixed the modules.conf and rmmod'd it and she-bang.. its back to GOOD! I have
bass and the controls are back in aumix.
I guess we/you should submit that one to the creative opensource thinggy... It
is a good patch. Then we need to get in bed with the sndconf folks to somehow
detect whether it is a GOOD soundblaster live or an EVIL one.. and put the
option in where appropriate.. but if all else fails ... a quick edit of
/etc/modules.conf is soooo much easier than re-compiling all the kernel modules.
PS: I will be snowboarding tomorrow... no access to email/bugtraq
*** Bug 36217 has been marked as a duplicate of this bug. ***
Ok.... once I finally got the iso's from a mirror (in Austreliia and Costa Rica
I think).. I eagerly installed it to all my machines at work.... the fix for
30772 was in the new release.... but the fix for this one was not part of the
release... how can we make it become part of redhat? or after reading on #36217,
it looks like creative has a MUCH newer version of this module available... how
do we get that into redhat (up2date???)
(back to re-compiling kernel mods :( )
The patch was 2 days too late :)
But it will be in the updated kernel we are currently working on. This kernel,
once finished, stable and tested, will be availabe via up2date.
Creative's driver is at http://opensource.creative.com and now the best thing:
it can be compiled without recompiling the rest of the kernel! So just download
it, uncompress it, make sure that you have kernel sources in /usr/src/linux, do
"make" and "make install" and that's it! It's working for me perfectly with the
default kernel from RH 7.1.
I'm closing this as closed in rawhide as the rawhide kernels have the fix.
I tried the previous users suggestion (to use the driver from creative) but it
caused havok on my system... not sure why, but when I tried to play sound, the
system would have a coredump in the dmesg log... and then I could not shut down.
I will try the rawhide kernel (if I can find it)