DebianThis forum is for the discussion of Debian Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I've just installed Lenny (linux-image-2.6.26-1-686), but can't get my soundcard working. It needs the snd-cs46xx module, but that's not installed. I've searched the package database, but can't find a file named snd-cs46xx.ko. Any tips?
Then if the building of the alsa modules went OK, you can restart (I think, or just modprobe it) and find that you have your snd-cs46xx.ko module in place and sound works. Hope this helps.
From some posts in de Debian-kernel mailinglist I understand that this module contains some proprietary stuff ("blob"/firmware) and is therefore removed.
http://www.alsa-project.org/main/ind...:Module-cs46xx
This page comes from the alsa site. It explains how to build the cs46xx module. Since you're running a debian system (?) I would suggest NOT following the instructions on this page, but paying attention to the line that reads
Quote:
./configure --with-cards=cs46xx --with-sequencer=yes ; make ; make install
and try to figure out how to get that ./configure line recognized by module-assistant, or some other debian based tool that you could use to build your module. That may sound stupid, but the alsa-source package deposits the package 'alsa-driver.tar.bz2' in the /usr/src directory. Maybe you could unpack this archive (it unpacks to a subdirectory of '/usr/src/modules/alsa-driver/'. There is a 'configure' file there.
You could run './configure --with-cards=cs46xx --with-sequencer=yes' then 'make' then find the resultant kernel module, place it in the right place (where? I dunno) and modprobe it. There are more instructions on that page for how you have to set up modutils and modprobe.d
I have to say at this point that this all may not be good for the stability of your system, that you should look to other ideas about how to fix your problem... etc etc. I've also never done it, and I don't know if you'll really get cs46xx out of it.
From some posts in de Debian-kernel mailinglist I understand that this module contains some proprietary stuff ("blob"/firmware) and is therefore removed.
IIRC, the problem was that one of the files in the source code didn't contain licensing information, therefore this module was declared Politically Incorrect by the Debian honchos (Apparently, it's not a problem with Linus or the other distros, however, as it's still part of the standard kernel source).
The last kernel version that had this module included was 2.6.22.
Also, with Debian kernels later than 2.6.24, the Alsa source code for the module won't even compile - at least it didn't for me. 2.6.24 was the last kernel under which I could compile this module.
So, the bottom line is: There are a lot of older machines that can no longer use Debian if sound is desired. This module was used on quite a few 1999-era boxes, eMachines in particular. This is unfortunate as there are few distros anymore that will run on these machines at all (I could only get Debian and Slackware to work on mine) without crashing or very poor performance.
(...) Maybe then the alsa package from the alsa site is the way for you.
Yeah! I've got music! :-)
For others with the same problem, this is what I did. First make sure you have the linux-headers package installed. Then download the original alsa-driver 1.0.17 tarball and:
tar xf alsa-driver-1.0.17.tar.bz2
cd alsa-driver-1.0.17/
./configure --with-cards=cs46xx --with-sequencer=yes --with-isapnp=no --disable-verbose-printk
make
make install
modprobe snd-cs46xx
Using the latest version of alsa source: 1.0.18a,
I followed these instructions and the build went fine. Then I used alsaconf to configure alsa and it found the cs46xx card and driver. However, when alsaconf, or a raw modprobe, tries to insert the kernel module it fails with the following errors logged in dmesg:
[ 2452.740993] snd_cs46xx: disagrees about version of symbol snd_rawmidi_receive
[ 2452.741005] snd_cs46xx: Unknown symbol snd_rawmidi_receive
[ 2452.741055] snd_cs46xx: disagrees about version of symbol snd_info_register
[ 2452.741057] snd_cs46xx: Unknown symbol snd_info_register
I looked at the ./configure help but didn't see anything that would help.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.