2002-02-26 21:47:23

by Doug Alcorn

[permalink] [raw]
Subject: cs46xx on ThinkPad A22m and poor quality output


I have an IBM ThinkPad A22m 2628-STU. I've been using the cs46xx
driver since I got the machine back in November of 2001. Originally
it worked great. I have two problems. One seems to be known and
intermittently fixed. The other I can't find anything about in the
archives.

The known problem is with changing the AC state. With both kernel
2.4.17 and 2.4.18 (maybe others, I don't remember) if I unplug the AC,
I get garbled output. To fix it, I have to unload the cs46xx,
ac97_codec, and soundcore modules then reload them (of course,
restarting esd and xmms). I had seen reports that the unloading of
the modules wasn't necessary somewhere around 2.4.5; only restarting
the apps with open connections to the device. I haven't tested that.

The other problem maybe hardware. Like I said, the sound was crystal
clear. Recently, the output sounds like I blew out my speakers. At
first I thought it was my crappy headphones. I unplugged the
headphones and the internal speakers sound the same way. It's just at
the higher-levels of output (when my xmms eq display has lines that
peak) it sounds fuzzy. The other interesting thing is that streamed
audio sounds much worse than my actual mp3 files. Is it possible the
card got smoked?

I'm at least an average C programmer. I have done almost no kernel
development; however, I will be glad to test, possibly debug, and
otherwise provide what assistance I can to resolve either of these
issues. BTW, I have set the thinkpad=1 parameter for the 46xx
module. I'm not sure what other information you might need to
diagnose this problem.
--
(__) Doug Alcorn (mailto:[email protected] http://www.lathi.net)
oo / PGP 02B3 1E26 BCF2 9AAF 93F1 61D7 450C B264 3E63 D543
|_/ If you're a capitalist and you have the best goods and they're
free, you don't have to proselytize, you just have to wait.


2002-02-27 02:21:37

by Doug Alcorn

[permalink] [raw]
Subject: Re: cs46xx on ThinkPad A22m and poor quality output

Doug Alcorn <[email protected]> writes:

> The other problem maybe hardware. Like I said, the sound was
> crystal clear. Recently, the output sounds like I blew out my
> speakers. At first I thought it was my crappy headphones. I
> unplugged the headphones and the internal speakers sound the same
> way. It's just at the higher-levels of output (when my xmms eq
> display has lines that peak) it sounds fuzzy. The other interesting
> thing is that streamed audio sounds much worse than my actual mp3
> files. Is it possible the card got smoked?

I hate to follow up to my own post; however, I managed to get the card
working well with the alsa cs46xx driver. This would imply to me that
it's a bug in the linux kernel driver for the cs46xx (is this referred
to as the oss driver?).

BTW, someone suggested I simply turn the volume down using the
hardware buttons on the keyboard. The poor sound quality is really
irrespective of the speaker volume. Maybe this wasn't clear when I
talked about the "higher-levels of output". I'm not sure about the
right vocabulary. I guess it's the power output on the individual
frequency bands.
--
(__) Doug Alcorn (mailto:[email protected] http://www.lathi.net)
oo / PGP 02B3 1E26 BCF2 9AAF 93F1 61D7 450C B264 3E63 D543
|_/ If you're a capitalist and you have the best goods and they're
free, you don't have to proselytize, you just have to wait.

2002-02-27 18:18:47

by Dave Hansen

[permalink] [raw]
Subject: Re: cs46xx on ThinkPad A22m and poor quality output

Doug Alcorn wrote:
> I hate to follow up to my own post; however, I managed to get the card
> working well with the alsa cs46xx driver. This would imply to me that
> it's a bug in the linux kernel driver for the cs46xx (is this referred
> to as the oss driver?).
>
> BTW, someone suggested I simply turn the volume down using the
> hardware buttons on the keyboard. The poor sound quality is really
> irrespective of the speaker volume. Maybe this wasn't clear when I
> talked about the "higher-levels of output". I'm not sure about the
> right vocabulary. I guess it's the power output on the individual
> frequency bands.

You aren't crazy. Lots of us with T2[012]'s have this problem. It does
indeed appear to be a problem with the OSS version of the driver.
Someone had a theory that the APM code stays in an interrupt too long
and causes the card to get into an unanticipated state, causing the poor
sound quality.

The weird part is that some of us see the problem often, while some
never see it at all. I haven't had it happen in months, so I suspect
that later versions of the kernel are better equipped to handle it. At
least the ALSA one seems to work better.

--
Dave Hansen
[email protected]

2002-03-01 01:37:25

by Theodore Ts'o

[permalink] [raw]
Subject: Re: cs46xx on ThinkPad A22m and poor quality output

On Wed, Feb 27, 2002 at 10:17:28AM -0800, Dave Hansen wrote:
> You aren't crazy. Lots of us with T2[012]'s have this problem. It does
> indeed appear to be a problem with the OSS version of the driver.
> Someone had a theory that the APM code stays in an interrupt too long
> and causes the card to get into an unanticipated state, causing the poor
> sound quality.

The way I deal with this is to ahve the following in my apm events script:

case "$1" in
resume)
esdctl off
rmmod cs4281 ; insmod cs4281
rmmod cs46xx ; insmod cs46xx
/etc/init.d/aumix start
esdctl on
esac

The reason for the cs4281 and cs46xx is so that the script will work
both on my X20 as well as my T21.

It's a gross kludge, but it works....

- Ted