sound Thinkpad 600


Forum: Laptops
Topic: sound Thinkpad 600
started by: wetterau

Posted by wetterau on Aug. 27 2004,03:10
Hi, stumped on this challenge. Have read everything I can find on the subject. Each approach falls short on my T600. The dsl distro is great, otherwise. The basic problem is that I don't know what should be where. The sound chip is a Crystal 4237b. When I "insmod cs4232" I get "unresolved symbol ad1848-detect"...init,control,mload. I have tried to configure /etc/conf as suggested without success. The Linux how-to directs one to configure hardware with /sbin/setpnp (but how?) and then says to create an /etc/modutils soundfile and run update-modules. What kind of soundfile? With what name? I understand that dsl uses OSS. Where can I look for an explanation of what is required. I'm sure this is solvable. TIA for any suggestions.
Posted by ke4nt1 on Aug. 27 2004,08:46
I had similar issues with my IBM 770..

Does "insmod uart401" give errors.
( if it gives you back a prompt, your good...)
Add your io, irq, and dma info to your modprobe request.
See this thread for what I did....
< http://damnsmalllinux.org/cgi-bin....;hl=770 >

Rather than place the info in /etc/modutils/aliases, and run update-modules,
I placed the modprobe commands in the bootlocal.sh, and saved that
file in my backup
" iinsmod uart401"
" insmod cs4232 io=0x530 irq=5 dma=1 dma2=0 mpuio=0x330 mpuirq=5"

73
ke4nt

Posted by wetterau on Aug. 27 2004,17:36
Thanks for your help. The insmod uart401 did return a string of errors (unresolved symbol ad1848-detect, etc.) and then a system prompt. I put the two insmod commands into bootlocal.sh and rebooted. The same errors were listed with additional symbols unresolved from the second insmod command. XMMS will play a CD but no sound comes out. The speakers beep properly when asked to by the system, and the keyboard control of this beep volume works properly. Do you have any further suggestions? Looking forward to installing .8! Great work!
Posted by ke4nt1 on Aug. 27 2004,18:42
We must be close...

Read this discussion..

< http://www.levien.com/tp600.html >

73
ke4nt

Posted by Lord-gremlin on Sep. 06 2004,02:04
I too am having a similar issue with sound on my ThinkPad 380D...

It's got a cs4236. I have tried everything listed above and in the link and still, no sound...grrrr

Has anyone got any other suggestions?? I am at a loss...  :(

Posted by ke4nt1 on Sep. 06 2004,04:36
Maybe this will help...

My guess is you may need to rmmod soundcore or rmmod sound BEFORE
trying this...   look at "lsmod" to see if either one is already loaded..

This is all done as the root user..

This may help wetterau as well, since he had ad1848 issues..
----------------------------------------------------------------------------------------

From : < http://lists.debian.org/debian-user/2002/02/msg00142.html >

> Crystal CS4232 and CS4236 based cards such as AcerMagic S23, TB Tropez _Plus_ and
>         many PC motherboards (Compaq, HP, Intel, ...)
>         CS4232 is a PnP multimedia chip which contains a CS3231A codec,
>         SB and MPU401 emulations. There is support for OPL3 too.
>         Unfortunately the MPU401 mode doesn't work (I don't know how to
>         initialize it). CS4236 is an enhanced (compatible) version of CS4232.
>         NOTE! Don't ever try to use isapnptools with CS4232 since this will just
>         freeze your machine (due to chip bugs). If you have problems in getting
>         CS4232 working you could try initializing it with DOS (CS4232C.EXE) and
>         then booting Linux using loadlin. CS4232C.EXE loads a secret firmware
>         patch which is not documented by Crystal.
>
>
> You need CONFIG_SOUND_CS4232. That's in the kernel. Documentation is at
>
> <kernel-dir>/Documentation/sound/CS4232
>
> It reads:
>
> To configure the Crystal CS423x sound chip and activate its DSP functions,
> modules may be loaded in this order:
>
>         modprobe sound
>         insmod ad1848
>         insmod uart401
>         insmod cs4232 io=* irq=* dma=* dma2=*
>
> This is the meaning of the parameters:
>
>         io--I/O address of the Windows Sound System (normally 0x534)
>         irq--IRQ of this device
>         dma and dma2--DMA channels (DMA2 may be 0)
>
> On some cards, the board attempts to do non-PnP setup, and fails.  If you
> have problems, use Linux' PnP facilities.
>
> To get MIDI facilities add
>
>         insmod opl3 io=*
>
> where "io" is the I/O address of the OPL3 synthesizer. This will be shown
> in /proc/sys/pnp and is normally 0x388.
>
>
> Hope this helps,
> Adam
>
> PS. You can substitute modprobe instead of insmod. And to have it loaded at
> boot time (after you get it working), put the names of the modules (if any)
> that you need loaded in /etc/modules

73
ke4nt

Posted by wetterau on Sep. 06 2004,05:10
ke4nt1, thank you so much for the above post. I am typing this while listening to a CD on my Thinkpad 600 for the first time. All I have to do now is set it up so that the modules are loaded at boot time per the instructions. Terrific!
I followed the instructions exactly as stated, using io=0x530 irq=5 dma=1 dma2=0.

Posted by ke4nt1 on Sep. 06 2004,05:27
You can put the lines in your "bootlocal.sh" file, and your
box will have sound with every bootup ..

Remember to add your "bootlocal.sh" to your "filetool.lst" if
your running from LiveCD , and run your backup..

73
ke4nt

Posted by wetterau on Sep. 06 2004,06:09
Yes, this works perfectly. I put "rmmod soundcore" and the four modprobe commands in /opt/bootlocal.sh and now have sound after booting. Great. Thanks again.
On another topic, if there are any writers out there, you might be interested in my experience with DSL. I've tried many combinations of Ted, AbiWord, vim, and ooWriter, searching for the simplest tool that will do the job efficiently. Ted is excellent for short work, but you are limited to rtf (no curly quotes, em dashes). The export out to Word or Writer works fairly well, but the import is awkward. Curly quotes are not reproducible. You have to do a lot of screwing around with search & replace. I think a few Perl routines could take care of this (once Ted was set up with a font that includes em dashes and curly quotes), but it is a nuisance.
AbiWord works well and has a wider import/export choice, but it also chokes on curly quotes. On their forum, they had many discussions about this. The general problem of non-standard characters is complicated, especially when you consider different languages and unlimited undo, redo, etc.
Both Ted and AbiWord work less well on longer documents (novel length) than ooWriter, which seems to have industrial strength display routines. ooWriter also has a reasonable smart (curly) quote and em dash substitution algorithm. I was hoping to get away with using a simpler wp, but I'm back to ooWriter on my present novel.
LyX is also a contender. It produces the best printed output  of all the word processors (equal to that of adobe pagemaker) and has by far the best mathematical expression editor (if you are doing scientific/technical writing). I wrote two novels with it, but it was an endless hassle converting to word format for publishers. You lose little formatting details and have to proofread everything twice. Revisions force you to go through this multiple times. Too bad. It's a great wp, although there is no dsl package yet.
I programmed for a living for years, so I'm used to programming text editors and would just as soon use one as use a formatting word processor. But the extra work involved in formatting the italics, curly quotes, etc, expected by publishers outweighs (for me) the initial simplicity, robustness, and ascii universality of the programming editor.
So, I came back to ooWriter and am happy that DSL supports it. Once loaded, ooWriter is fast and very solid, much better than MS Word, in my view. If I'm in the boondocks and running from a live CD or key drive, Ted will get me through fine.
(My books are available free in five different ebook formats at www.memoware.com if anyone is interested. Just search on "wetterau")

Posted by ke4nt1 on Sep. 06 2004,06:55
WoW ! - That's Great !
Thanks for the tips and sharing your trials with the WP's..
I'm off to see your works..

73
ke4nt

Posted by cbagger01 on Sep. 06 2004,19:15
Another option is Siag Office word processor.  I believe that the name was "Pathetic Writer" or something like that.

Henrique has a DSL extension for it on his website if you want to check it out.

Posted by clivesay on Oct. 22 2004,22:55
Kent -

This is an old post, but I want to say thank you!! I just received 8 PII's with this chipset and now 8 needy kids will be able to hear the annoying music of Circus Linux!  :) The instructions worked perfectly.

BTW - SaidinUnleashed - it might be good to collect alot of these chipset commands for the FAQ. Kent has contributed alot when it comes to sound.

Thanks again, Kent!

Chris

Posted by ke4nt1 on Oct. 22 2004,23:00
:D
Posted by green on Nov. 26 2004,19:42
Kent "the soundgod":

still having issues with:

IBM Thinkpad 600E
DSL 0.8.4 HD Install
chipset: 4610/11

Thus far I've read many, many, posts regarding sound, but to no avail. If i try to tell it: cs4232, it knows there is no such thing installed and wants to kick my arse.
I'm thinking a dripping wet screwdriver might fix this problem.

Posted by ke4nt1 on Nov. 27 2004,05:36
Here are some excerpts from IBM on the subject...

Quote
-----------------------------------------------------------------------------------------
General discussion:
Red Hat Linux 6.0 and the ThinkPad 600E
Right out of the box, Red Hat Linux 6.0 contains drivers for many of the devices built into the ThinkPad 600E, including video, audio, serial, parallel, diskette, hard disk, CD-ROM, mouse, and Advanced Power Management (APM). With the exceptions of audio and APM support, these devices are ready for use immediately after installation without any additional configuration. This section discusses some of the Linux compatibility issues with the built-in devices. Audio. The ThinkPad 600E uses a CS4239 chip for FM synthesis and 16-bit playback and record of waveform data. The driver included with Red Hat Linux that is most suited to supporting this audio chip is the CS4232 driver, which generically supports the CS4232 and chips that are compatible with it. When configured as described later in this document, the CS4232 driver provides basic audio support on the ThinkPad 600E.
---------------------------------------------------------------------------------------


So, it seems that the cs4232 IS the one to make this gogo...
Here's the details:   .....

Quote
------------------------------------------------------------------------------------------

Sound Ordinarily, configuring Linux sound support is as simple as running the sndconfig utility and specifying the audio hardware to be used as well as its resource configuration. You may recall from Part I of this Guide that the audio chip in the ThinkPad 600E is a CS4239, and that it is supported by the standard CS4232 audio driver included with Red Hat Linux. However, there is a problem when using the standard CS4232 audio driver with the ThinkPad 600E. The symptom is that when you play a wave file, the sound plays two or more times with various parts of the sound interwoven, as if the interrupt resource was specified incorrectly. The problem occurs when the CS4232 driver is loaded in the usual fashion during boot-up, but it does not occur if the driver is loaded later. There is a work-around, but it may be too involved for a user who is new to Linux. The work around, describe shortly, involves creating a script that will be run during the initialization of a run-level. The procedure for configuring sound on the ThinkPad 600E is summarized below.Use the sndconfig utility to specify the audio device and its resources.Create a script file that loads as part of the desired run-levels. The script will stop and restart the CS4232 audio driver.
Run sndconfig. From a Linux command prompt, issue the command sndconfig . This will start the sound configuration utility, which will let you specify the type of sound card that you have and the resources that it uses. When prompted for the card type, use the following setting.
Setup prompt Recommended selection
Card Type Crystal CS423x sound chip

Next, select the I/O, IRQ, and DMA resources for the sound chip. Listed below are the default settings for the ThinkPad 600E. You can try these, or use a ThinkPad Configuration program to determine the actual settings. In most cases, the settings below should work. An interesting anomaly: On occasion we have found some systems that require the DMA and DMA2 settings to be reversed (DMA=0, DMA2=1), even when the PS2 utility shows that the default settings are in effect! So if the default settings are in effect for your system but you don't hear any sound with Linux when you specify those settings, try swapping the DMA values.

Setup prompt Recommended selection
I/O PORT 0x530
IRQ 5
DMA 1
DMA 2 0
MPU I/O 330
MPU IRQ 9

After you specify the resource settings, sndconfig will play some samples. Try to select a resource configuration that results in clear playback of the audio sample. Another interesting anomaly: On some systems we noticed that the sample playback was garbled, even though the correct settings were specified. In these cases, normal audio playback worked correctly, and audio was garbled only during playback of sndconfig's test samples. Create the CS4232 script. To work around the problem of repeating wave data, you must load the CS4232 driver later in the boot process. One way to do this is by creating a script that is executed during run-level initialization. You can use a script like the one below.


# !/bin/bash

# chkconfig: 345 84 16

# description: Starts/stops the CS4232 driver at boot time and shutdown

HOME=/etc

case "$1" in
start)
echo "Starting CS4232 driver"
rmmod cs4232
modprobe cs4232
;;
stop)
echo "Stopping CS4232 driver"
rmmod cs4232
;;
restart)
$0 stop
$0 start
;;
status)
echo "Status (NO-OP)"
;;
*)
echo "Usage: cs4232 {start|stop|status|restart}
exit 1
esac

exit 0



Save the script as /etc/rc.d/init.d/cs4232 and set the "execute" file attribute. Then, for each run-level that you want to include sound support, create an appropriate "symbolic link" to the file from the corresponding run-level directories. For example, to run the script as part of run-level 5, create the link /etc/rc.d/rc5.d/S84cs4232 that points to /etc/rc.d/init.d/cs4232 . The "S84" prefix was chosen for this example because, by default, the mixer service starts as "S85", and we want the CS4232 driver to be functional before that. With the above script in place, the CS4232 driver will be unloaded and reloaded as the run-level is initialized, which will put the CS4232 driver and sound chip into a good state.
----------------------------------------------------------------------------------------

Ahh yes..  the ol' rmmod trick again....

First off, don't bother with sndconfig.  It's borked...

So, make sure you ...

' rmmod soundcore '
AND
' rmmod cs4232 '

before you try to load the cs4232 module.

insmod cs4232 io=0x530 irq=5 dma=0 dma2=1 mpuio=0x330 mpuirq=9

Try it with the mpuirq = 9 ( which is unusual )
and note the switch of the dma #'s in the above text, so try both..

Once typed into a root shell, exit X with 'ctrl-alt-bksp', and 'startx' to get back in ...
You should see the sound mixer icon in the lower right corner


Then , try to play an mp3 with xmms, or lookup some streaming audio,
like from  http://radio.sbkradio.net:8000/listen.pls

Let us know , so others can share..

73
ke4nt
( a sound-nerd )

Posted by green on Nov. 30 2004,04:27
Okay, "sound-nerd" I will prepare to follow this procedure. I am hopeful that some combination of the aforementioned will work. I have tried entering "stuff" on the cmd prompt level, but always get the typical errors. I will try to set aside some time for this specific task and post here with the results.
Thank you very much for providing the resources and information. It is much appreciated.

Posted by Owen on Dec. 06 2004,00:47
Ok, I've being trying to add the code to my bootlocal.sh but it will not let me save it. I've tried changing the permissions and everything. Anything you guys can suggest?
Posted by green on Jan. 13 2005,02:33
I know, I know. You said to do this a long time ago.
I finger fornicated it. Sorry.
This worked for me when I followed the instructinos of this post and added the following to

/opt/bootlocal.sh

rmmod soundcore
modprobe sound
insmod ad1848
insmod uart401
insmod cs4232 io=0x530 irq=5 dma=1 dma2=0


THANKS  KE4NT !!!!

Posted by leyb on Jan. 29 2005,05:08
Im sorry to bring this thread from the dead, but since
some members reported success with the instructions posted,
I was wondering if any of you could help me out as well, Im using the same machine TP600.
when following the procedure this is what happens:
Code Sample

#rmmod soundcore          //returns prompt no problem
#modprobe sound              //returns prompt no problem
#insmod ad1848
Using /lib/modules/2.4.26/kernel/drivers/sound/ad1848.o.gz
/lib/modules/2.4.26/kernel/drivers/sound/ad1848.o.gz: unresolved symbol isapnp_find_dev



As a result when the in the last step is fails for problems with the ad1848 module.
Code Sample

#insmod cs4232 io=0x530 irq=5 dma=1 dma2=0
Using /lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz: unresolved symbol isapnp_probe_devs
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz: unresolved symbol ad1848_detect
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz: unresolved symbol ad1848_init
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz: unresolved symbol ad1848_control
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz: unresolved symbol ad1848_unload

I've been trying to make sound work on this machine for the longest and the info in this board seems promising, anyone please care to comment on my situation, it'll be ver appreciated.

Posted by leyb on Jan. 29 2005,06:28
Regarding my previous problem, i found out that
i needed to load the isa-pnp module first in order to
load ad18148, but when loading the sound card module I'm
still getting problems:
Code Sample

insmod cs4232 io=0x530 irq=5 dma=1 dma2=0 mpuio=0x330 mpuirq=9
Using /lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz: init_module: No such device
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o.gz: Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
     You may find more information in syslog or the output from dmesg

This is from dmesg:
Code Sample

ad1848/cs4248 codec driver Copyright (C) by Hannu Savolainen 1993-1996
ad1848: No ISAPnP cards found, trying standard ones...
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.
YM3812 and OPL-3 driver Copyright (C) by Hannu Savolainen, Rob Hooft 1993-1996
OPL3 not detected ff
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.

I think im getting closer, any suggestions?

Posted by cbagger01 on Jan. 29 2005,20:32
Try booting your original OS and write down the audio driver settings (IRQ, IO, etc) on a piece of paper.

Then try forcing these settings using modprobe while running DSL.

Posted by panama on Jan. 30 2005,06:45
Hi Guys,

First of all let me just say that I am really new to linux and DSL. The people on this board are very knowledgeable and I would certainly take Kent's advice over mine if I was you.

I also wanted  to mention that Kent mentions in the thread (about 2 months ago)  that SNDCONFIG is "borked".  I am  not  sure what that means but I am going to assume a NEGATIVE connotation. I would also agree with him and hope that DSL adds the newest version someday. (soon?)

Anyway, I have an IBM ThinkPad 380XD that gives me sound probs and I resolve it like this:

< http://damnsmalllinux.org/cgi-bin....9;st=10 >

Maybe adding the lines to the bootlocal file is better...and  I will try it on my next HDD load. But so far this is my ticket to sweet laptop sound!

BTW...nothing personal Kent. You are always a godsend...anything perceived negative in this post is just the Wild Turkey speaking up at 2 a.m!

Panama

Posted by SaidinUnleashed on June 16 2005,23:32
BOOKMARK

Tired of having to hunt for this ^_^

Posted by bubbz on June 19 2005,20:19
Edited again to add: I have no idea why, but today I tried again and it worked first time, thanks to all the original posters in this thread for their work on this issue :)

Quote
My original post:
I also have a Thinkpad 600E, and have been trying for several hours to get the sound configured correctly in DSL.

I have followed the instructions from this thread (as root, starting from rmmod soundcore, through to insmod cs4232...etc), but following the insmod cs4232.... command I receive the error:

<snip>/cs4232.o: init_module: No such device

I have tried the following four settings (all suggested at some point earlier in the thread), but all produce the same error:

io=0x530 irq=5 dma=1 dma2=0
io=0x530 irq=5 dma=0 dma2=1
io=0x530 irq=5 dma=1 dma2=0 mpuio=0x330 mpuirq=9
io=0x530 irq=5 dma=0 dma2=1 mpuio=0x330 mpuirq=9

I'm totally stuck now, please can somebody make a valid suggestion of how to proceed!

edited to add: I don't know if it's relevant, but when i try dmesg, the last few lines say:

ad1848/cs4248 codec driver Copyright © by Hannu Savolainen 1993-1996
ad1848: No ISAPnP cards found, trying standard ones...
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.
cs4232: set synthio and synthirq to use the wavefront facilities.

Thanks...

Posted by searayman on Mar. 25 2006,23:41
i have an ibm thinkpad 600e and i cnat get my sound to work: hea ris what i have tried:

Code Sample
root@box:/home/dsl# modprobe sound
root@box:/home/dsl# insmod ad1848
Using /lib/modules/2.4.26/kernel/drivers/sound/ad1848.o
root@box:/home/dsl# insmod uart401
Using /lib/modules/2.4.26/kernel/drivers/sound/uart401.o
root@box:/home/dsl# insmod cs4232 io=0x530 irq=5 dma=1 dma2=0
Using /lib/modules/2.4.26/kernel/drivers/sound/cs4232.o
/lib/modules/2.4.26/kernel/drivers/sound/cs4232.o: init_module: No such device
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
     You may find more information in syslog or the output from dmesgt


also i have tried it with dma=1 and dma2=0 but i get the same error

Posted by Linuturk on April 06 2006,20:27
I'm running a Thinkpad 600
DSL 2.3

I've followed the various steps listed in this thread, and the bios doesn't give specific information about the sound hardware. Can anyone give me additional pointers? What additional information do you need from me?

Posted by zode on April 10 2006,21:45
Hello, last night was the first time I tried DSL, and it was on a Thinkpad 600E with 384K of memory.  

My machine type (label on bottom of laptop) is:  2645-IB1.  Build date was 12/99.

Based on info on this board, I did the following:

1.  Turn on computer, holding the F1 key until after Thinkpad logo appears to get into the BIOS menu.

2. Choose the "Config" option.

3. Turn off the "fast boot" option.

4. Boot DSL 2.3 CD with either no options (just hit enter), or I now use the "dsl toram" option.

5. When desktop appears, enter the following in console:

sudo su
modprobe sound
insmod ad1848
insmod uart401
insmod cs4232 io=0x530 irq=5 dma=1 dma2=0

6.  Make sure the Thinkpad's control of the sound is adjusted by using Fn-PgUp and Fn-PgDn to adjust the output level.

Just for grins, see if you get any output at the headphone jack, regardless of whether you hear anything from the speakers on the Thinkpad.  

I also noticed that I can close the lid on the Thinkpad, and it makes a sound like it is suspending, but it continues to run.  However, the sound to the Thinkpad's speakers is cut off, while the output from the headphone jack continues.

I also note that DSL's mix and volume control doesn't seem to have any effect , but I am OK with how it works without it.  I use the combination of the volume control in XMMS along with the Fn-PgUp and Fn-PgDn keys to control it.

I hope you can get yours going.

Powered by Ikonboard 3.1.2a
Ikonboard © 2001 Jarvis Entertainment Group, Inc.