CS4239
CS4239This is a Cirrus Logic Audio controller Note: This sound adapter is paired with a PCI CS4610 audio controller. Features
|
Linux OSS driver
This sound chip is supported by the cs4232 kernel module. Use the following options line when loading this module:
options cs4232 io=0x530 irq=5 dma=1 dma2=0
or try this from the Commandline:
modprobe cs4232 io=0x530 irq=5 dma=1 dma2=0 mpuio=0x330 mpuirq=7 synthio=0x330 synthirq=7
=> Dont forget to disable QUICKBOOT in the BIOS and dont INITIALIZE !
Linux ALSA driver
This sound chip is supported by the snd-cs4236 kernel module. Use the following options line when loading this module:
options snd-cs4236 index=0 port=0x530 cport=0x538 isapnp=0 dma1=1 dma2=0 irq=5
One 600E running Debian Etch with vanilla 2.6.28 kernel failed to produce sound with snd-cs4236, but the sound works with driver snd-cs4232 loaded. Instructions for Ubuntu suggest to blacklist this driver which in this case was wrong. With standard Debian etch and etchnhalf kernels the snd-cs4236 did not work and snd-cs4232 got stuck on device initialisation or crashed the kernel. Working set of ALSA modules for this 600E on 2.6.28 is:
# lsmod|grep snd snd_cs4232 11764 1 snd_opl3_lib 8928 1 snd_cs4232 snd_hwdep 6084 1 snd_opl3_lib snd_wss_lib 22400 1 snd_cs4232 snd_pcm 60072 2 snd_wss_lib snd_timer 16708 3 snd_opl3_lib,snd_wss_lib,snd_pcm snd_page_alloc 8008 2 snd_wss_lib,snd_pcm snd_mpu401_uart 5824 1 snd_cs4232 snd_rawmidi 17728 1 snd_mpu401_uart snd_seq_device 6284 2 snd_opl3_lib,snd_rawmidi snd 44580 10 snd_cs4232,snd_opl3_lib,snd_hwdep,snd_wss_lib,snd_pcm,snd_timer,snd_mpu401_uart,snd_rawmidi,snd_seq_device soundcore 6016 1 snd
CS4236 vs. CS4232
On at least one 600E, with kernels up to 2.6.24.x and ALSA versions up to 1.0.17 (compiled and installed out-of-kernel), one of the working setups was:
options snd-cs4236 port=0x530 cport=0x538 isapnp=0 dma1=1 dma2=2 irq=5
Curiously, these parameters appeared to change with each kernel update and would seemingly at random be either correctly detected by alsaconfig or need to be manually tweaked until some lucky combination was found.
Luckily, on this same 600E, with kernels starting at 2.6.27.x, the in-kernel ALSA driver CS4232 'just works' without passing any special parameters.
PnP issues
This chip is software configurable. In Thinkpads, the BIOS sets up the chip if fast boot is disabled. If fast boot is enabled, the chip is disabled until a PnP driver enables it. As both the OSS and the ALSA module do not support PnP discovering of this chips in a ThinkPad, a configuration script like this one may be used. See also this page for more information.
ThinkPads this chip may be found in
Mixer
I loaded the cs4242 module and on my Gnome Desktop (Ubuntu) and the sound work, but was too low when I play music and with the mixer of Gnome was not possible to modify the volume. I fixed the problem installing the mixer of KDE (kmix) and I use PCM to modify the volume.