LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Installed slackware 14.0. Sound card (CMI8738) not working properly. (https://www.linuxquestions.org/questions/linux-hardware-18/installed-slackware-14-0-sound-card-cmi8738-not-working-properly-4175480567/)

arma93ndo 10-12-2013 08:51 PM

Installed slackware 14.0. Sound card (CMI8738) not working properly.
 
Hello Slackers!
This is my first post, so be gentle. :o

I've installed Slackware 14.0 64 bits on a desktop PC.
My kernel is Huge 3.2.29, so I trust it contains all modules I need.

Everything works fine, except for my PCI sound card (wich is a C-Media CMI8738).
And it's strange because it partially works fine.
I mean, when KDE starts, the opening and shut down noises actually occurs.

By the way, I'm using KDE 4.8.
If I go to KDE "System Settings" -> Phonon -> Device Preference -> Audio Playback DEvice Preference; and I give higher priority to "C-Media CMI8738 (C-Media PCI DAC/ADC)", after rebooting I get a notification that says something like this:

KDE has detected that an audio device has been removed. Do you want KDE to forget permanently about these devices?
And my sound card is listed :(

I must say that I read this.
http://www.alsa-project.org/main/ind...:Module-cmipci
And I tried everything it suggested.

I installed alsa-driver,
Code:

bunzip2 alsa-driver-xxx
      tar -xf alsa-driver-xxx
      cd alsa-driver-xxx
      ./configure --with-cards=cmipci --with-sequencer=yes ; make ; make install

alsa-lib, alsa-firmware and alsa-utils.

And inserted these modules into kernel:
Code:

modprobe snd-cmipci ; modprobe snd-pcm-oss ; modprobe snd-mixer-oss ; modprobe snd-seq-oss
And ran alsamixer to unmute every single channel I found:
Code:

alsamixer
Is important for me to say that Alsaconf does not work for me.
When I run as root alsaconf, it simply inform that:
Code:

#  alsaconf
Quote:

No supported PnP or PCI card found.
Another important thing to say is when X (KDE) starts up, a notification appears informing me that:
Quote:

The audio playback device C-Media CMI8738 (C-Media PCI DAC/ADC) does not work.
My default user and my root user are both in the "audio" group.

Here's the output to:
lspci | grep -i audio
Code:

01:00.1 Audio device: nVidia Corporation GF108 High Definition Audio Controller (rev a1)
05:00.0 Multimedia audio controller: C-Media Electronics Inc CM8738 (rev 10)

And here's the output to:
cat /proc/asounds/cards
Code:

0 [NVidia ]: HDA-Intel - HDA NVidia
HDA NVidia at 0xfcffc000 irq 17
1 [CMI8738 ]: CMI8738-MC6 - C-Media CMI8738
C-Media CMI8738 (model 55) at 0xee00, irq 16

The output for:
lsmod | grep snd
Code:

snd_seq_dummy          1455  0
snd_seq_oss            29048  0
snd_seq_midi_event      5620  1 snd_seq_oss
snd_seq                51265  5 snd_seq_midi_event,snd_seq_oss,snd_seq_dummy
snd_pcm_oss            39183  0
snd_mixer_oss          15404  1 snd_pcm_oss
snd_hda_codec_hdmi    24057  4
snd_cmipci            31424  2
snd_hda_intel          23267  2
snd_mpu401_uart        5971  1 snd_cmipci
snd_hda_codec          81925  2 snd_hda_intel,snd_hda_codec_hdmi
snd_opl3_lib            8654  1 snd_cmipci
snd_hwdep              6324  2 snd_opl3_lib,snd_hda_codec
snd_rawmidi            18825  1 snd_mpu401_uart
snd_seq_device          5228  5 snd_rawmidi,snd_opl3_lib,snd_seq,snd_seq_oss,snd_seq_dummy
snd_pcm                72864  5 snd_hda_codec,snd_hda_intel,snd_cmipci,snd_hda_codec_hdmi,snd_pcm_oss
snd_page_alloc          7081  2 snd_pcm,snd_hda_intel
snd_timer              18798  3 snd_pcm,snd_opl3_lib,snd_seq
snd                    57796  23 snd_timer,snd_pcm,snd_seq_device,snd_rawmidi,snd_hwdep,snd_opl3_lib,snd_hda_codec,snd_mpu401_uart,snd_hda_intel,snd_cmipci,snd_hda_codec_hdmi,snd_mixer_oss,snd_pcm_oss,snd_seq,snd_seq_oss
gameport                7687  1 snd_cmipci
soundcore              5474  1 snd
root@desktopPC:~# lsmod | grep snd
snd_seq_dummy          1455  0
snd_seq_oss            29048  0
snd_seq_midi_event      5620  1 snd_seq_oss
snd_seq                51265  5 snd_seq_midi_event,snd_seq_oss,snd_seq_dummy
snd_pcm_oss            39183  0
snd_mixer_oss          15404  1 snd_pcm_oss
snd_hda_codec_hdmi    24057  4
snd_cmipci            31424  2
snd_hda_intel          23267  2
snd_mpu401_uart        5971  1 snd_cmipci
snd_hda_codec          81925  2 snd_hda_intel,snd_hda_codec_hdmi
snd_opl3_lib            8654  1 snd_cmipci
snd_hwdep              6324  2 snd_opl3_lib,snd_hda_codec
snd_rawmidi            18825  1 snd_mpu401_uart
snd_seq_device          5228  5 snd_rawmidi,snd_opl3_lib,snd_seq,snd_seq_oss,snd_seq_dummy
snd_pcm                72864  5 snd_hda_codec,snd_hda_intel,snd_cmipci,snd_hda_codec_hdmi,snd_pcm_oss
snd_page_alloc          7081  2 snd_pcm,snd_hda_intel
snd_timer              18798  3 snd_pcm,snd_opl3_lib,snd_seq
snd                    57796  23 snd_timer,snd_pcm,snd_seq_device,snd_rawmidi,snd_hwdep,snd_opl3_lib,snd_hda_codec,snd_mpu401_uart,snd_hda_intel,snd_cmipci,snd_hda_codec_hdmi,snd_mixer_oss,snd_pcm_oss,snd_seq,snd_seq_oss
gameport                7687  1 snd_cmipci
soundcore              5474  1 snd

The output for ALSA detected audio devices:
aplay -l
Code:

**** List of PLAYBACK Hardware Devices ****
card 0: CMI8738 [C-Media CMI8738], device 0: CMI8738-MC6 [C-Media PCI DAC/ADC]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: CMI8738 [C-Media CMI8738], device 1: CMI8738-MC6 [C-Media PCI 2nd DAC]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: CMI8738 [C-Media CMI8738], device 2: CMI8738-MC6 [C-Media PCI IEC958]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

When I try:
aplay -D plughw:0,0 /usr/share/sounds/alsa/Noise.wav

it DOES output sound (except in the channel of the center, actually it doesn't matter).

When I play any .mp3 or video I DO get output sound when I use XMMS or MPLayer, but I get no sound in VLC (wich is strange, because it actually reproduce the mp3. The progress bar moves. But theres no sound. There's no any message of missing plugin neither).

I tried creating /etc/asound.conf and add an entry for the working card/slot and device:

pcm.!default {
type hw
card 0
device 0
}
ctl.!default {
type hw
card 0
device 0
}

but it didn't work.

And running alsamixer (either as root or as my normal user) doesn't help. I unmute all the channels but I get the same result (no audio).

What should I do? And if i get my audio device working, should I update my system to Slackware 14-Current? Or that would ruin my achievement?

THANK YOU IN ADVICE.

Sorry if the post is long, I just tried to give you the more information possible so you'd be able to know what's going on.

Thank you again.

Drakeo 10-12-2013 11:31 PM

look if you want that card to load and be default then do Like I do I have multiple cards I do a bunch of multimedia. and the hassle I have is keeping the card my default card. /etc/modprobe.d/sound.conf
after i put that card in the system my bios kept making it default. I did not want it as my default card. so I edited my /etc/modprobe.d/sound.conf to this
Quote:

# --- BEGIN: Generated by ALSACONF, do not edit. ---
# --- ALSACONF version 1.0.25 ---
alias char-major-116 snd
alias char-major-14 soundcore
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-12 snd-pcm-oss
alias snd-card-0 snd-hda-intel
alias sound-slot-0 snd-hda-intel
options snd slots=snd-hda-intel,snd_cmipci,snd-usb-audio
# --- END: Generated by ALSACONF, do not edit. ---
this forces snd-hda-intel to be the first card. I tried setting in kde. I tried doing it in alsamixer for some reason kde and xfce did not want to keep my setting. I set up a local config for it etc etc. Finally i just told the soundconfig how I want them to load.
I can go in and change it with kde and save it when i want to change default. but hey this works for me.
It is a big deal for me because some of the programs I use will not start untill the sound device is set as default.

Unlike your problem snd_cmpici wanted to be first on the board. instead of integrated.
I have one more card and another usb also but those three have to stay that way for me.
if you want your snd_cmipci to be default then tell alsa to load it first
alias snd-card-0 snd_cmipci
alias sound-slot-0 snd_cmipci
options snd slots=snd_cmipci,snd-hda-intel,snd-usb-audio
hope this helps.
the kernel doing what the bios say and then the alsa is loading your card from that. then kde is seeing the slot has changed again and would you like to remove this problem :)
hang in there.
by the way that do not edit has pretty much kept me for a year from doing things I wanted to do. well I am sure there is another way.
but you know it works for me. has for 4 years now on every slackware distro. every new one I keep try it with out.
but every time I had to use brute force.

allend 10-13-2013 02:46 AM

Have you seen this? http://www.alsa-project.org/main/ind...:Module-cmipci

arma93ndo 10-14-2013 06:39 PM

Drakeo:

I did what you seggested me to do.

I created a /etc/modprobe.d/sound.conf file, and I added these lines:
Quote:

alias snd-card-0 snd_cmipci
alias sound-slot-0 snd_cmipci
options snd slots=snd_cmipci,snd-hda-intel,snd-usb-audio
And after rebooting, my soundcard started to work correctly. As both, as root user and as a normal user.
Thank you! :D


All times are GMT -5. The time now is 10:57 AM.