Solved ThinkPad 600E Audio.

dscrdia

New Member

Reaction score: 2
Messages: 15

I recently bought a ThinkPad 600E, and while some patience is required it runs a minimal X session very acceptably on FreeBSD 9.2-RELEASE.

Unfortunately, I seem to have ran into some trouble with the audio. The devices are a CS4239 and a CS4610. The snd_csa driver, which would normally work with the latter, doesn't support being paired with an ISA sound card. The CS4239 ThinkWiki page suggests that the ISA device is the one I should concentrate on getting working. As as result, i'm using the snd_mss driver.

Following the man page for snd_mss, my device.hints for the device are as follows:

Code:
hint.pcm.0.at="isa"
hint.pcm.0.irq="10"
hint.pcm.0.drq="1"
hint.pcm.0.flags="0x0"
Alas, cat /dev/sndstat shows no devices. I have also tried some of the settings from the ThinkWiki page (IRQ 5, port 0x530) without any luck.

In case it's useful, my dmesg output regarding pcm devices is as follows:
Code:
pcm0: <CS461x PCM Audio> on csa0
pcm0: AC97 reset timed out.
pcm0: ac97 codec invalid or not present (id == 0)
device_attach: pcm0 attach returned 6
pcm1: <CS423x-PCI> port 0x530-0x537,0x388-0x38b,0x220-0x233 irq 0 drq 0,0 on acpi0
device_attach: pcm1 attach returned 6
Interestingly, if I change my device.hints to reflect pcm1 rather than pcm0, that same CS423x-PCI error occurs on pcm2.

I am possibly missing something straightforward, can anyone remember setting one up in the past who might be able to help me?
 
OP
OP
dscrdia

dscrdia

New Member

Reaction score: 2
Messages: 15

I seem to have made some progress on this issue.

The problem wasn't caused my settings, but rather some options that needed to be set in the BIOS. I'll include the instructions for any other brave souls who want to try it.

First, the BIOS settings:
- Press and hold F1 as you switch on your ThinkPad 600/600e.
- Navigate to the settings menu.
- Select "Initialize" and at the next prompt press OK.
- Then go into the "Quick Boot" section and disable it.
- Exit the menus and restart the machine.

For FreeBSD 9.2-RELEASE (and likely others), you need the following:

In /boot/loader.conf:

Code:
snd_mss_enable="YES"
In /boot/device.hints:
Code:
hint.pcm.0.at="isa"
hint.pcm.0.port="0x530"
hint.pcm.0.irq="5"
hint.pcm.0.drq="0"
hint.pcm.0.flags="0x10 + 1"
The device hints aren't mandatory, but the unusual hint.pcm.0.flags setting allows for full playback and record support.

Sadly, despite the driver loading correctly, this still doesn't result in sound. On my 600e, playing a mp3 in mplayer results in a repeating Audio device got stuck! error, and other programs have no more luck. I suspect this might be a bug in the driver, but I imagine developers have better things to do than to fix bugs on 15 year old sound hardware. Any advice will be appreciated.
 
OP
OP
dscrdia

dscrdia

New Member

Reaction score: 2
Messages: 15

I'd like to provide an update on the topic, for the two or perhaps even three people who might be interested!

I've found that since updating my 600E to 9.3-RELEASE, the sound issue has been resolved completely. My thanks to whoever commited a fix for allowing me to listen to music while I type once more.
 

darkvampire

New Member


Messages: 1

Thank you for pushing me in the right direction. My beloved 600e runs 12-RELEASE and I got sound working with the default settings described in man snd_mss (QuickBoot is off as described from you). I use mpg123 for streaming music while doing some cli-stuff. (hint: Ignore the ...card is Unknown/invalid...during boot. It works well)
 
Top