Difference between revisions of "CS4624"

From ThinkWiki
Jump to: navigation, search
(ThinkPad's this chip may be found in)
(switched categorization)
 
(12 intermediate revisions by 6 users not shown)
Line 4: Line 4:
 
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;">
 
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;">
 
=== CS4624 ===
 
=== CS4624 ===
This is a Cirrus Logic Audio controller
+
This is a Cirrus Logic Audio controller with legacy SoundBlaster compatibility for DOS applications
 
+
{{NOTE|This chip is paired with a Intel AC'97 Audio controller with [[CS4297|CS4297A]] codec, only one sound driver should be loaded, preferably the AC'97 driver.}}
Note: This chip is paired with a [[CS4297|CS4297A]] AC'97 Audio controller, only one sound driver should be loaded.
 
 
 
 
=== Features ===
 
=== Features ===
 
* Chipset: CS4624
 
* Chipset: CS4624
Line 15: Line 13:
 
|style="vertical-align:top" |
 
|style="vertical-align:top" |
 
|}
 
|}
 +
=== Linux ALSA driver ===
 +
This sound chip is supported by the '''snd-cs46xx''' kernel module.
  
=== Linux OSS driver ===
+
==== Problems with suspend and resume in kernel prior 2.6.29 ====
This sound chip is supported by the cs46xx kernel module.
+
The driver has a bug in that sound does not work after suspend and resume. If the cs46xx Alsa driver is compiled as a module though, sound can be reinitialized by removing and reloading the module and resetting the alsamixer soundlevels. A simple bash-script (to be run as root) that does this, would look roughly like this:
  
=== Linux ALSA driver ===
+
<pre>#!/bin/sh
This sound chip is supported by the snd-cs46xx kernel module.
+
/etc/rc.d/init.d/alsa stop
 +
modprobe -r cs46xx
 +
modprobe cs46xx
 +
/etc/rc.d/init.d/alsa start</pre>
 +
 
 +
Do note that the link to "/etc/rc.d/init.d/alsa" may have to be modified depending on where your distributions init-files are placed.
 +
 
 +
Without the kernel config option {{kernelconf|CONFIG_SND_CS46XX_NEW_DSP|[ ]|Currus Logic (Sound Fusion) New DSP support||||}}  suspend and resume works perfectly. However, the old DPS image has no support for multichannel sound or dmix, so you have to use a soundserver like <tt>esd</tt> or PulseAudio to allow multiple applications to play sounds at the same time.
 +
 
 +
==== Problems with the microphone ====
 +
If you can't seem to use your mic with this card, open up alsamixer and set the following 3 channels to "capture": MIC, CAPTURE, ADC. Make sure your amixer output contains following:
 +
Simple mixer control 'ADC',0
 +
  Capabilities: volume cswitch cswitch-joined
 +
  Playback channels: Front Left - Front Right
 +
  Capture channels: Front Left - Front Right
 +
  Limits: 0 - 32767
 +
  Front Left: 32767 [100%] Capture [on]
 +
  Front Right: 32767 [100%] Capture [on]
 +
(see also: http://alsa.opensrc.org/cs46xx)
  
=== ThinkPad's this chip may be found in ===
+
=== ThinkPads this chip may be found in ===
 
* {{600X}}
 
* {{600X}}
 
* {{A20m}}, {{A20p}}, {{A21m}}, {{A21p}}, {{A22m}}, {{A22p}}
 
* {{A20m}}, {{A20p}}, {{A21m}}, {{A21p}}, {{A22m}}, {{A22p}}
 
* {{T20}}, {{T21}}, {{T22}}
 
* {{T20}}, {{T21}}, {{T22}}
  
[[Category:Components]]
+
[[Category:Audio Devices]]

Latest revision as of 14:18, 15 November 2020

CS4624

This is a Cirrus Logic Audio controller with legacy SoundBlaster compatibility for DOS applications

NOTE!
This chip is paired with a Intel AC'97 Audio controller with CS4297A codec, only one sound driver should be loaded, preferably the AC'97 driver.

Features

  • Chipset: CS4624
  • Interface: PCI
  • PCI ID: 1013:6003

Linux ALSA driver

This sound chip is supported by the snd-cs46xx kernel module.

Problems with suspend and resume in kernel prior 2.6.29

The driver has a bug in that sound does not work after suspend and resume. If the cs46xx Alsa driver is compiled as a module though, sound can be reinitialized by removing and reloading the module and resetting the alsamixer soundlevels. A simple bash-script (to be run as root) that does this, would look roughly like this:

#!/bin/sh
/etc/rc.d/init.d/alsa stop
modprobe -r cs46xx
modprobe cs46xx
/etc/rc.d/init.d/alsa start

Do note that the link to "/etc/rc.d/init.d/alsa" may have to be modified depending on where your distributions init-files are placed.

Without the kernel config option [ ]Currus Logic (Sound Fusion) New DSP support (CONFIG_SND_CS46XX_NEW_DSP) suspend and resume works perfectly. However, the old DPS image has no support for multichannel sound or dmix, so you have to use a soundserver like esd or PulseAudio to allow multiple applications to play sounds at the same time.

Problems with the microphone

If you can't seem to use your mic with this card, open up alsamixer and set the following 3 channels to "capture": MIC, CAPTURE, ADC. Make sure your amixer output contains following:

Simple mixer control 'ADC',0
  Capabilities: volume cswitch cswitch-joined
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: 0 - 32767 
  Front Left: 32767 [100%] Capture [on]
  Front Right: 32767 [100%] Capture [on] 

(see also: http://alsa.opensrc.org/cs46xx)

ThinkPads this chip may be found in