• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Sound on Thinkpad 600E in Linux

Abzstrak

Platinum Member
This thing is driving me absolutely nuts... cant get OSS or ALSA to work, modules for sound wont load for either one. If anyone has experience with the 600E (which is different from the 600) and linux, please PM or email me.

 
I will be assuming you have the the ALSA libraries, utilities and modules.

You need to install the libraries and utilites. Within the package you used to install, there should exist a system startup script which needs to be installed and then run to initialize the hardware (everytime you boot). Find the README that came with the package, and find out more about it. If you use rpms, it should be installed for you, and you should only have to activate it (I think).

Unfortunately, the actual module (cs46xx) for the crystal chip in the laptop does not work (or did not work for me at the time), so after searching a bit, I found out I could choose from a couple of other modules (cs4232, or cs4236). I chose to use the cs4236 module:

snd-card-cs4236

BTW, you want to make sure the modules has been compiled OSS support, otherwise some programs will not work.

After you are done with compiling and installing your module, you need to setup your /etc/modules.conf like this:


#
# ALSA native device support
#
alias char-major-116 snd
options snd snd_major=116 snd_cards_limit=1 snd_device_mode=0666 snd_device_gid=0 snd_device_uid=0
#
alias sound snd-card-0
alias snd-card-0 snd-card-cs4236
#
options snd-card-cs4236 snd_index=0 snd_id="CS4236" snd_isapnp=0 snd_port=0x530
snd_cport=0x538 snd_mpu_port=0x330 snd_fm_port=0x388 snd_sb_port=0x220 snd_irq=5 snd_dma1=1 snd_dma2=0 snd_mpu_irq=9
#
# OSS/Free emulation setup for ALSA
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0
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 snd-minor-oss-0 snd-card-cs4236
alias snd-minor-oss-1 snd-opl3
alias snd-minor-oss-3 snd-pcm-oss


At this point you should be able to test whether the ALSA modules can load, and whether the sound device initializes.

OAN, OSS modules work just as well, and I ended up reverting back them since they are currently part of the kernel tree. Also, they are much easier to setup. The only constraint/difference is that I can only use the cs4232 modules in combination with the opl3 module.

This is my current modules.conf file for OSS:

alias char-major-14 cs4232
post-install cs4232 modprobe "-k" opl3
options cs4232 synthirq=9 synthio=0x200 io=0x530 irq=5 dma=1 dma2=0 mpuio=0x330
alias synth0 opl3
options opl3 io=0x388


No complaints from me though.

Hope this helps.

GL
 
thanx lnxman,

I just tried your OSS settings, but without luck... I even tried compiling in OPL3 support, but to no avail. I cant figure out why this @#@%$#@% thing wont work.

Also, I'm running on the 2.4.18 kernel, which R U?

for ALSA I've tried the 4632. 4636 and 4610... but none will load. I was getting sick of comflicting information on which chipset is in this notebook on the web so I took it apart, and it HAS TWO CHIPSETS... it has a CS4239 ISA based one and a CS4610C PCI based one.. damned IBM. Not to mention the freakin Neomagic has sound capabilities built into it too, but as far as I can tell it was never implemented by IBM.

Heres a pic of the sound chipsets


If OSS will work, I'd like to stick with it for the sake of easibility, but I really dont care... I have winxp on another drive and took all the settings from it, but to no avail... I then tried every possible combination of io/irq/dma, but it of course didn't help... I know sound is enabled, but I booted to DOS and tried a ps2 sound enable anyway...
 
I have the same laptop, with same chipsets. So I figure that if it works for me, then it should work for you too.

The reason it has 2 chipsets is because (if I remember correctly) IBM uses the 46xx chipset which controls more than just the sound (to put it in lame terms). They, themselves hinted it was not the greatest thing having combined the capabilities of the 46xx chipset to manage more than just sound. That is why there exists a 4239 chipset as a backup for sound in the event the driver's for the 46xx chipset detect problems with the chip (in terms of accessing it for sound). That way the drivers can bypass the 46xx chip sound capabilities and fall back to the 42xx architecture independently from the 46xx chip . . . Hope I made sense. I found about that a while ago when I was cheking IBM's LINUX support for this laptop and other 600 series laptops.

Anyhow, I am running LINUX with kernel 2.4.18 as well. What I do, however, I do not compile sound support into the kernel. The reason for me is that I want trace problems when the modules give me problems. BESIDES, if you compile the modules into the kernel, the changes/options you add to /etc/modules.conf will NOT take effect. Those only apply to loadable modules. Doing an lsmod I get:

opl3 10848 0 (autoclean) (unused)
cs4232 3460 0
ad1848 20652 0 [cs4232]
uart401 6020 0 [cs4232]
sound 51244 0 [opl3 cs4232 ad1848 uart401]
soundcore 3268 4 [sound]


The only module I load is:
/sbin/modprobe cs4232

Once the above is loaded, modules.conf options takes care of everything else.

I would suggest to compile all sound support as a module, and try again. It should work.

Let me know.


GL

BTW, I just realized I don't have a single ISA device in my laptop. I am curious, what do lspci and pnpdump say?


/edit: Added BTW.
 
I'm pretty sure it was all moduler... I didnt mean I actually said y to it...

I'll go back over all of it and recompile here shortly, I dont suppose you'd mind emailing me your kernel (the bzImage)? that way I can see if it'll work? if so please email to djohnson@iomnis.com

btw, I appreciate the help
 
also lspci give me:

00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03)
00:02.0 CardBus bridge: Texas Instruments PCI1251A
00:02.1 CardBus bridge: Texas Instruments PCI1251A
00:06.0 Multimedia audio controller: Cirrus Logic CS 4610/11 [CrystalClear SoundFusion Audio Accelerator] (rev 01)
00:07.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 02)
01:00.0 VGA compatible controller: Neomagic Corporation [MagicMedia 256AV] (rev 12)

pnpdump, I apparently dont have and lspnp gives me an error about /proc/bus/pnp not existing...... maybe this is a problem
 
Not necessarily. It just means that you probably have not compiled isapnp support with your kernel. But if you are absolutely sure your chipset is an ISA, then try compiling isapnp support in your kernel and see what it says when the kernel boots up.

Your PCI dump is exactly the same as mine.

However, I do not have the presence of any ISA devices on my laptop. Even though the chip exists. If you ask me, the 42xx chipset should show up in any of the 2 dumps, but it does not for whatever reason. . . Maybe 46xx+42xx count as one device???

BTW, I email you my bzImage, and kernel config file for you to look at.

L8
 
Back
Top