Skip navigation.
Home

Audio

Motivation

Sound is key for a new computer user. Sound combined with animated icons let the novice know that the computer has received the command and is working on it. I don't think the intended user of this system is really into music, but she may want to listen to a CD while she is working. Sound contributes to a positive user experience.

Setup

Man this was a super big pain in the neck to setup. I poured over numerous sites, message boards, etc and eventually found out how to get it to go.

There is a known problem with the TP600E. The soundcard is incorrectly auto-identified as a CS46xx card. The drivers that really work with the card are CS4236. So here's how to get it going without a steep learning-curve headache.

  1. Install alsa-base and alsa-utils. I use the synaptic package manager to do all of my package installs but apt at the command line works just as well.
  2. Blacklist the incorrect sound card by modifying /etc/hotplug/blacklist. Insert the following two lines to the end of the file
    /etc/hotplug/blacklist wrote:
    snd-cs46xx
    cs46xx
  3. Add the following lines to /etc/modprobe.d/alsa-base
    /etc/modprobe.d/alsa-base wrote:
    alias char-major-116 snd
    alias char-major-14 soundcore
    alias snd-card-0 snd-cs4236
    #the next line starts with options and ends with dma2=0
    options snd-cs4236 isapnp=0 cport=0x538 port=0x530 sb_port=0x220 fm_port=0x388 irq=5 dma1=1 dma2=0
    alias sound-slot-0 snd-card-0
    alias sound-slot-1 snd-card-1
    alias sound-service-0-0 snd-mixer-oss
    alias sound-service-0-1 snd-seq-oss
    alias sound-service-0-3 snd-pcm-oss
    alias sound-service-0-8 snd-seq-oss
    alias sound-service-0-12 snd-pcm-oss
    alias /dev/mixer snd-mixer-oss
    alias /dev/dsp snd-pcm-oss
    alias /dev/midi snd-seq-oss
    options snd cards_limit=1
  4. Add the following line to the file /etc/modules
    /etc/modules wrote:
    snd-cs4236
  5. Verify that the sound card has been enabled by the BIOS.
    At a command prompt (as su or using sudo) wrote:
    lspnp -v 0e 0f 10 11

    The output should look like:

    0e CSC0100 multimedia controller: audio
    io 0x0530-0x0537
    io 0x0388-0x038b
    io 0x0220-0x0233
    irq 5
    dma 1
    dma 0

    0f CSC0110 multimedia controller: audio
    io 0x0538-0x053f

    10 CSC0101 multimedia controller: audio
    io 0x0200-0x0207

    11 CSC0103 multimedia controller: audio
    io disabled
    irq disabled
    Some people have device 11 enabled as well but on my system it isn't and everything seems to work just fine.
  6. If 0e, 0f and 10 are disabled you will need to enable them in the BIOS. This is done in the BIOSish menu found by hitting at boot up. I don't exactly know how to get to it every time but I usually have the best success after the machine has been powered off first. Do the initialize first, then disable quickboot (an init re-enables quickboot).
  7. Let the machine start back up and see if the card is ready to go by doing a lspnp -v 0e 0f 10 11 again. The card has to be enabled for it to work (duh) and if it is not you will get card not found kinds of errors. Some people have also used the dos PS2.EXE utility (or tpctl) to do the same thing but the initialize worked perfectly. Before I initialized, my card was disabled.
  8. Turn up PCM and Volume settings in the Applications: Multimedia: Volume Control application. If you don't turn up PCM you won't hear anything.
  9. If you go to Applications: Desktop Preferences: Sound and enable sound server startup. GNOME will play sounds when stuff happens, but if you run an application that writes to /dev/dsp directly (like Applications: Multimedia: Music Player), the sound server daemon (enlightened sound daemon) will be in the way. If you want to get the ESD to yield you will need to change the following lines
    /etc/esound/esd.conf wrote:
    default_options= -as 5
    If you want to see which application is locking /dev/dsp do a
    command line wrote:
    fuser -v /dev/dsp