Translation(s): none

(!) ?Discussion


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.

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 linux-2.6 2.6.23-1, the binary-only firmware in this driver was removed (see the package changelog), due to discovered 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.1 A free redistribution license has been requested from Cirrus Logic.2

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 alsa-driver version.

  1. 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
  2. Add the Debian Backports repository to /etc/apt/sources.list, for example:

    # Backported packages for Debian Etch
    deb http://www.backports.org/debian etch-backports main
  3. 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.

  4. Install the etch-backports/debhelper and etch-backports/quilt packages:

    # aptitude -t etch-backports install debhelper quilt
    $ exit
  5. Acquire a deprecated 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
  6. Build the binary packages:

    $ cd alsa-driver-1.0.16
    $ dpkg-buildpackage -b -uc -rfakeroot
  7. Install the alsa-source package:

    $ cd ..
    $ su
    # dpkg -i ./alsa-source*deb
    $ exit
  8. Build an alsa-modules-* package for your system:

    $ m-a -u /tmp build alsa
  9. Install the alsa-modules-* package:

    $ su
    # dpkg -i /tmp/alsa-modules*deb
  10. If not already performed, install the alsa-base and alsa-utils packages:

    # aptitude install alsa-base alsa-utils
  11. Reload the ALSA modules and load the snd-cs46xx module:

    # invoke-rc.d alsa reload
    # modprobe snd-cs46xx
  12. 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
  13. Run alsamixer, unmute channels and raise sound levels:

    $ alsamixer
  14. 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.

See Also


CategoryHardware | CategorySound