Cirrus Logic Sound Fusion CS4280, CS461x, CS462x, CS463x devices
This page describes the state of support for sound devices based on CS46xx chipsets on Debian systems.
?TableOfContents(3)
snd-cs46xx is a kernel module supporting Cirrus Logic's Sound Fusion CS46xx audio controllers. It is an ["ALSA"] driver provided in Linux 2.6 mainline kernels.
In [wiki:src:linux-2.6 linux-2.6] 2.6.23-1, the binary-only firmware in this driver was removed (see the [http://packages.debian.org/changelogs/pool/main/l/linux-2.6/linux-2.6_2.6.26-13/changelog#versionversion2.6.23-1 package changelog]), due to discovered [:KernelFirmwareLicensing:firmware licensing issues]. The driver was disabled at this time. Firmware was also removed from the alsa-source package to resolve bug 483918.
The firmware is unable to be distributed by the Debian project, as the snd-cs46xx driver has no license?FootNote([http://bugzilla.kernel.org/show_bug.cgi?id=10750 CS46xx sound driver carries no license] - Kernel Bug Tracker Bug 10750). A free redistribution license has been requested from Cirrus Logic?FootNote([wiki:Self:KernelFirmwareLicensing#head-3565057df6494cdf78b26fb1f0875d032b54c167 cs46xx_image.h (sound/pci/cs46xx)] - ["KernelFirmwareLicensing"]).
Installation
Lenny
The snd-cs46xx module is not present within 2.6.26 Debian kernel images. See Debian bug 464197 and ["KernelFirmwareLicensing"].
Etch
2.6.18 kernel
The snd-cs46xx module is included within 2.6.18 Debian kernel images.
2.6.24 kernel
The following procedure can be used to provide the snd-cs46xx module, using an alsa-source package generated from a deprecated [wiki:src:alsa-driver alsa-driver] version.
Install the build-essential, debconf-utils, devscripts, fakeroot, relevant linux-headers and module-assistant packages:
$ su # aptitude update # aptitude install build-essential debconf-utils devscripts fakeroot linux-headers-$(uname -r) module-assistant
Add the [:Backports:Debian Backports] repository to /etc/apt/sources.list, for example:
# Backported packages for Debian Etch deb http://www.backports.org/debian etch-backports main
Update the list of available packages and install the etch-backports/debian-backports-keyring package:
# aptitude update # aptitude -t etch-backports install debian-backports-keyring
As your system does not yet have the GnuPG archive key of the backports.org repository installed, you will be asked to confirm installation of a package from an untrusted repository. Enter Yes when prompted.
Install the etch-backports/debhelper and etch-backports/quilt packages:
# aptitude -t etch-backports install debhelper quilt $ exit
Acquire a deprecated [wiki:src:alsa-driver alsa-driver] source package:
$ dget -x http://snapshot.debian.net/archive/2008/04/07/debian/pool/main/a/alsa-driver/alsa-driver_1.0.16-1.1.dsc
Build the binary packages:
$ cd alsa-driver-1.0.16 $ dpkg-buildpackage -b -uc -rfakeroot
Install the alsa-source package:
$ cd .. $ su # dpkg -i ./alsa-source*deb $ exit
Build an alsa-modules-* package for your system:
$ m-a -u /tmp build alsa
Install the alsa-modules-* package:
$ su # dpkg -i /tmp/alsa-modules*deb
If not already performed, install the alsa-base and alsa-utils packages:
# aptitude install alsa-base alsa-utils
Reload the ALSA modules and load the snd-cs46xx module:
# invoke-rc.d alsa reload # modprobe snd-cs46xx
If not already performed, add your user account to the audio group, then log out and log back into your system:
# adduser yourusername audio # exit $ exit
Run [http://manpages.debian.net/man/1/alsamixer alsamixer], unmute channels and raise sound levels:
$ alsamixer
Test your sound device:
$ aplay /usr/share/sounds/alsa/Noise.wav
Supported Devices
The page ["HowToIdentifyADevice/PCI"] explains how to identify a PCI device.
The following list is based on the alias fields of modinfo snd-cs46xx on Etch.
PCI: 1013:6001 Cirrus Logic CS 4610/11 [CrystalClear SoundFusion Audio Accelerator] PCI: 1013:6003 Cirrus Logic CS 4614/22/24 [CrystalClear SoundFusion Audio Accelerator] PCI: 1013:6004 Cirrus Logic CS 4614/22/24 [CrystalClear SoundFusion Audio Accelerator]
See Also
- ["ALSA"]
