[ltp] Sound on 600e with Debian Sarge distro
wes schreiner
linux-thinkpad@linux-thinkpad.org
Wed, 29 Dec 2004 15:43:13 -0600
Bert Haskins wrote:
>
>
> Michelle Klein-Hass wrote:
>
>>
>> What you are going to have to do is manually modprobe the driver
>> after everything else is up and running. It's a nasty kludge but it
>> works. My friend Chad wrote it up as a very small shell script, with
>> only this line:
>> /sbin/modprobe snd-cs4236 index=0 port=0x530 cport=0x538 irq=5 dma1=1
>> dma2=0 isapnp=0
>>
> I have never been able to get sound on either my 770x or 770z under
> Alsa and or any 2.6 kernel.
> Alsaconf finds the sound chip says to use a CS4236 but thinks that it
> is a legacy ISA and fails with the
> message "No legacy sound cards found".
> The fc2 sound card detection tool says no soundcards were detected.
All auto detection schemes will fail, due to the way the sound chip is
wired up.
> /proc/ ioports... interrupts don't show anything for sound.
yep, you won't get anything there until a driver can find the chip.
> Now this is really strange:
> lspci does show "Multimedia audio controller: Cirus logic CS 4610/11
> [Crystal clear SoundFusion Accelerator] (rev 01)"
> So which is right, is this sound chip ISA or PCI?
It's a PCI chip that emulates an ISA Plug and Play chip that is _not_
wired ISA Plug and Play! You can't control the CS4610/11 directly, that
's what the BIOS has control of in order to give you keyboard control of
volume and mute. What you can do is talk to it like it is a CS4232
(oss) or a CS4236/9 (alsa) but since those chips are normally wired up
ISA Plug and Play, but this chip isn't, you have to disable isapnp (see
isapnp=0 above, or disable it in the ALSA build configuration if you are
building your ALSA modules from source) and then give the correct port,
irq, and dma values to the driver. Only then will the driver load
correctly and you will have sound, well, once you unmute it, and by that
I mean both the keyboard mute/volume control as well as the sound card
mixer controls. If you have everything right and it still doesn't work,
you might have to reverse the values for dma0 and dma1.
>
> Further info: ps2 AU is setup right, sound worked under OSS and 2.4,
Good, then you should have a correct list of values for the ports, IRQ's
and DMA channels. You want to use the values that PS2.exe reports.
> sound works fine in dos games and Billy and Steves
> bad dream ,you know, the BS OS
That is irrelevant, as the Windows driver knows how to use the PnP BIOS
to reconfigure the chip on the fly, but the settings it applies only
last until the next boot, whereupon the settings revert to what PS2.exe
will show. The PnP BIOS (not the same as ISA PnP) is how the chip is
actually configured, and any settings made through this mechanism can
either be temporary until the next reboot, or permanent. The Windows
driver uses temporary settings, PS2.exe makes permanent settings. If
you have lspnp and setpnp installed (part of the pcmcia-cs package) ,
AND you have a kernel with PnP BIOS support then you can use lspnp to
see the settings and setpnp to change them. Mainline 2.4.x doesn't have
PnP BIOS support, but the now old 2.4.x-ac kernels did, as well as some
vendor kernels I think. I don't know about 2.6.x, I don't use it on my
Thinkpad.
> Does anyone have any ideas?
Good luck, you'll need it! :-)
> Thanks,
> Bert
>
>>
>> Run this command as root.
>>
>> BTW this only seems to work 100% reliably with Kernel 2.6.9. I don't
>> know about 2.6.10 but under 2.6.9 it's good to go. You might have to
>> get Kernel 2.6.9 from Sid...it might not be in Sarge yet.
>>
>> Oh yeah, you need to invoke aumix, again after su-ing to root, and
>> unmute main volume and PCM volume to get some sound.
>
Feh, get the settings to where you want, then run alsactl store. During
boot up initialization, run alsactl restore somewhere. Problem solved.
wes