(fwd) kernel/4990: Cirrus Logic CS4280/46xx Crystal Clear audio runs slow and staticy

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

(fwd) kernel/4990: Cirrus Logic CS4280/46xx Crystal Clear audio runs slow and staticy

Submitter says attached diff solves the problem some time ago, i am unsure
of the consequences of the value change, which was also explained to
submitter, it had worked for some time without any consequences that
i know of ie; didnt fry laptop/hardware. im sure there is a better way
to adjust latency (pc v thinkpad) if needed.

Diff should apply cleanly on 4.0/snapshot.

Index: dev/pci/cs4280.c
RCS file: /cvs/src/sys/dev/pci/cs4280.c,v
retrieving revision 1.25
diff -a -u -u -r1.25 cs4280.c
--- dev/pci/cs4280.c 2006/04/07 22:41:33 1.25
+++ dev/pci/cs4280.c 2006/10/24 07:42:17
@@ -623,7 +623,7 @@
  /* LATENCY_TIMER setting */
  mem = pci_conf_read(pa->pa_pc, pa->pa_tag, PCI_BHLC_REG);
- if ( PCI_LATTIMER(mem) < 32 ) {
+ if ( PCI_LATTIMER(mem) < 64 ) {
  mem &= 0xffff00ff;
  mem |= 0x00002000;
  pci_conf_write(pa->pa_pc, pa->pa_tag, PCI_BHLC_REG, mem);



>Number:         4990
>Category:       kernel
>Synopsis:       Cirrus Logic CS4280/46xx Crystal Clear audio runs slow and
>Confidential:   yes
>Severity:       serious
>Priority:       medium
>Responsible:    bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jan 26 09:00:01 GMT 2006
>Originator:     Ryan Freeman
>Release:        3.8 (GENERIC) and 3.9-BETA (GENERIC)
System      : OpenBSD 3.9-BETA (GENERIC)
Architecture: OpenBSD.i386
Machine     : i386 (Thinkpad 600x)
Processor   : Pentium III 500 Mhz
Memory     : 320 MB

When playing any sort of audio, be it via mpg123 or wav files, sounds in
a game included, it plays much slower than it should. The sound seems to
run at about half speed, with tons of static as well.

play any sound file by any means.

i accidentally found out that running something that takes cpu time
actually reduces the issue while something is being played. A good
example is running "ls -R /" or md5 on a large file. during the time at
which the said process is running, the sound actually runs almost 100%
normal, with minor breakup. Not sure that I would call this a `Fix' but
it is something.


Ryan Freeman <[hidden email]>
Slipgate, Org.