# thinkpad 560x No Sound!

## rlyacht

I just installed gentoo on my IBM Thinkpad 560X, replacing RedHat 7.2.  Everything is working fine -- including having it recognize and configure my wireless lan card.  The one thing left is sound.  I had sound working fine on this machine under RH. The video chipset is Crystal CS4237B.  I had success using the OSS CS4232 driver and also the generic Soundblaster driver.  I wrote down the settings before I wiped the disk, but now I can't get it running!

When I do 

```
modprobe sb irq=5 io=0x220 dma=1
```

, I get no errors, but then when I try to play an mp3 with mplayer, I hear nothing (no error messages though).  Catting a .WAV file to /dev/audio does nothing either.

In RH, I always configured sound with sndconfig.  I thought this was a general tool, but it seems it's RH specific.  I grabbed the source, but it depends on kudzu and other RH stuff.  Is there something else that can help me?  Perhaps my RH kernel settings were different? i have sound support compiled in, and the drivers compiled as modules.

I realize that the odds of finding another 560X user here are low, but I could use some general advice on how to do this sound stuff.  Since I've always used sndconfig I don't know about the mysteries of pnpdump (btw, when I ran it, it didn't detect any cards).

BTW, I also tried modprobe'ing the alsa cs-4236 driver (according to their docs it works for 4237B), but that failed.  Anyway, help, help, help, etc!

----------

## squanto

Are you using the Gentoo desktop setup instructions? Check your version of Alsa, "emerge search alsa" and see what version you are running.

Cause Alsa just got updated, and you should search for some other people who are trying to get alsa setup with new .9 version (if that is what you have).

They changed the way that alsa files are named and this has presented a problem for some others.

I don't have the newest Alsa so I am not of much help, but you may want to see if these help:

https://forums.gentoo.org/viewtopic.php?t=1601&highlight=alsa

https://forums.gentoo.org/viewtopic.php?t=1678&highlight=alsa

http://lists.gentoo.org/pipermail/gentoo-announce/2002-May/000157.html

-Andrew

----------

## bart

Ahh, that evil CS4237B chip. Maybe you should see this topic you are no the only one with troubles.

https://forums.gentoo.org/viewtopic.php?t=920

----------

## rlyacht

I finally got it working, with some help from this very useful page:

http://www.acqualan.com.br/misc/cs4237b.html

I complied the cs4232 driver into the kernel, and put the appropriate lines in the kernel line in grub to set the right irq, etc (see the help screen for the driver when configuring the kernel for the order of parameters).  The final step was to remove some ports from etc/pcmcia/config.opts, as I had the "stuttering" problem he describes.  It's now working very nicely.

----------

## bart

I'm using lilo so I put

```
append="cs4232=0x530,5,1,0,0x330,7"

```

in the lilo configuration.

I build support for 'Crystal CS4232 based (pnp) cards' into the kernel.

Tried it with and without 'Plug and Play' support.

Also I tried even without all the PCMCIA stuff, but it wouldn't work ...

I'm so unhappy. Could you please send me (bart@hakkefest.linux-site.net) your kernel's .config? Maybe I forget something essential.

----------

## rlyacht

I send it off.  Let me know if you don't get it, since I'm having some email problems. Good luck!

----------

## bart

I see something about it in my /var/spool/mail. I'll read it tomorrow. thanks!

----------

## Wayfarer

Just for posterity's sake (or, more realistically, in case I forget), I'd like to note that the Thinkpad 560X's CS4237B soundcard seems to work with alsa-driver 0.9.0_rc1-r7.  I've only tested PCM output; I really don't use any of the rest of it.   :Smile: 

There were several gotchas that I ran into, though:

I didn't use isapnp.  Trying to set isapnp up seemed a bit of a chore for me, so I decided not to do it.  However, I had to notify the snd-cs4236 module of this fact by adding 'snd_isapnp=0' to its options.  Also, I needed to specify snd_port and snd_cport.  I ended up just specifying everything, not leaving much to chance.

DMAs like to be in a certain order.  The two DMA channels must be specified in a certain order, elsewise the driver will initialize the card, but no sound will come out.  I used 'snd_dma1=1' and 'snd_dma2=0' in my options string.

The pcmcia-cs driver does not play nicely with the CS4237B.  According to this page, the pcmcia-cs port probe interferes with the CS4237B driver, causing my Thinkpad to crash spectacularly when I tried playing any audio.  To fix this, I opened up /etc/pcmcia/config.opts and changed this:

```
include port 0x100-0x4ff, port 0x800-0x8ff, port 0xc00-0xcff
```

to this:

```
include port 0x800-0x8ff, port 0xc00-0xcff
```

>Persuading< the pcmcia-cs drivers to leave the low ports alone fixed the problem.

In the end, the options line for the snd-cs4236 driver looked like this, in my case:

```
options snd-cs4236 snd_port=0x530 snd_cport=0x538 snd_mpu_port=0x330 snd_fm_port=0x388 snd_irq=5 snd_mpu_irq=9 snd_dma1=1 snd_dma2=0 snd_isapnp=0
```

I put the options in the /etc/modules.d/alsa file, right after specifying my card.

Hopefully, this'll help out anybody who wants to try ALSA on the 560X.

----------

