Problems with soundchip CMI8330

Support knowledgebase (thallma_cmi8330_kernelsnd)
Applies to

SuSE Linux: Versions since 7.1

Symptom

Although you succeeded in configuring your soundcard with CMI8330 chipset the card "doesn't sound" at all. The check for loaded modules with the command "lsmod" shows that the appropriate ALSA-Soundmodule "snd-card-cmi8330" has been loaded correctly though.

Cause

Unknown up to now.

Solution

Please use for configuration the so called kernel sound instead of ALSA/YaST2. The configuration of the kernel sound requires some "manual work", so here's the procedure step by step.

First step is to remove the current sound configuration, since ALSA and kernel sound don't work simultaneously.

For that purpose all modules loaded by ALSA have to be unloaded first. Please run the command "rcalsasound stop".

Please check with the command "lsmod" that none of the following modules are loaded anymore:

snd-seq-midi
snd-seq-midi-event
snd-seq
snd-pcm
snd-timer
snd-rawmidi
snd-seq-device
snd-ac97-codec
snd-mixer
snd
soundcore

If you should find single modules still loaded, please unload them with the command

rmmod Modulname

If unloading of particular modules should fail, continue with the other ones and retry that later.

After the complete unload of all sound modules you have to edit the configuration file "/etc/modules.conf". Open the file with an Ascii editor of your choice (e.g. "pico"). Move to the end of the file. You will find there the sound configuration done by YaST2:

#   
# YaST2: sound cards support
#  
alias char-major-116 snd
options snd snd_cards_limit=1 snd_major=116
alias snd-card-0 snd-card-cmi8330
options snd-card-cmi8330 snd_id=card1 snd_index=0
 
#
# YaST2: sound system dependent part
#
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-11 snd-mixer-oss
alias sound-service-0-12 snd-pcm-oss

Please delete these lines. If you made several attempts for configuration you may find similar entrys that have to be deleted, too. Store the changes and leave the editor.

YaST2 has to be "informed" that its sound configuration was deleted manually. Please open the file "/var/lib/YaST/unique.inf" and look for the line

[sound]
oJUp.LB5FQylNql1 configured  

Delete the configured-line. If you find more such lines after entry "[sound]" delete them, too. Again, store the changes that you've done.

Second Step is to configure the kernel sound.

Please run the following commands as administrator root:

mv /etc/isapnp.conf /etc/isapnp.conf.old
pnpdump -c > /etc/isapnp.conf
isapnp /etc/isapnp.conf

The first command may cause an error message if you have never run the commands "pnpdump" or "isapnp" on your system before.

The second command creates a configuration file that is required by the third command.

The third command shows the resource requirements of your soundcard. Please note the values. (If you have additional ISAPnP components in your system you will see their ressource requirements, too!)

You will see a lot of information, since soundcards have many different sub-devices. But only the first line of the output is relevant (please note: this line is usually rather long, thus it's often wrapped around!). An Example:

CMI0001 Serial No 16777472 [checksum 8d] CMI0001/16777472[0]{CMI8330. Audio Adapter}: Ports 0x530 0x388; IRQ5 DMA0 --- Enabled OK

Now some changes in file "/etc/modules.conf" are necessary. Please look for the lines:

alias char-major-14 off
alias sound off
alias midi off

and mark these lines with the comment prefix "#". If you have used the program "alsaconf" before you maybe won't find the first line "alias char-major-14 off" - that doesn't matter, just edit the last two lines in that case. Now it should look as follows:

# alias char-major-14 off
# alias sound off
# alias midi off

Look for the following lines:

# alias char-major-14 ad1848
# options ad1848 io=0x530 irq=7 dma=0 dma2=3

Remove the prefix "#" and adapt the options according to your notes about the soundcard ressources. Please delete the parameter "dma2=3" so that it reads:

alias char-major-14 ad1848
options ad1848 io=0x530 irq=5 dma=0

Store the changes and run the commands

depmod -a
modprobe ad1848

Now the soundcard should be configured successfully.


Keywords: SOUND, PROBLEM, CONFIGURE, CMI, 8330, NO

Categories: Sound

SDB-thallma_cmi8330_kernelsnd, Copyright SuSE Linux AG, Nürnberg, Germany - Version: 20. Sep 2001
SuSE Linux AG - Last generated: 08. Feb 2002 by dstark (sdb_gen 1.40.0)