You are not logged in.

#1 2013-03-03 16:55:57

zorro
Member
Registered: 2011-11-18
Posts: 47

[Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

Hi,

Please can you give some direction on how to configure ALSA on this PC to generate audio, under Arch.

A slightly-old ArchBang Live CD generates audio without any configuration and I have compared many arch configuration files/modules against it. This proves that the capability is there and allows comparison of files but I have not been able to find the fix.

# ls -l /dev/snd   # ArchBang

drwxr-xr-x 2 root root       80 Mar  3 10:38 by-path
crw-rw---- 1 root audio 116,  6 Mar  3 10:38 controlC0
crw-rw---- 1 root audio 116, 15 Mar  3 10:38 controlC1
crw-rw---- 1 root audio 116,  5 Mar  3 10:38 hwC0D2
crw-rw---- 1 root audio 116, 14 Mar  3 10:38 hwC1D0
crw-rw---- 1 root audio 116, 13 Mar  3 10:38 hwC1D1
crw-rw---- 1 root audio 116, 12 Mar  3 10:38 hwC1D2
crw-rw---- 1 root audio 116, 11 Mar  3 10:38 hwC1D3
crw-rw---- 1 root audio 116,  4 Mar  3 10:38 pcmC0D0c
crw-rw---- 1 root audio 116,  3 Mar  3 10:38 pcmC0D0p
crw-rw---- 1 root audio 116,  2 Mar  3 10:38 pcmC0D2c
crw-rw---- 1 root audio 116, 10 Mar  3 10:38 pcmC1D3p
crw-rw---- 1 root audio 116,  9 Mar  3 10:38 pcmC1D7p
crw-rw---- 1 root audio 116,  8 Mar  3 10:38 pcmC1D8p
crw-rw---- 1 root audio 116,  7 Mar  3 10:38 pcmC1D9p
crw-rw---- 1 root audio 116,  1 Mar  3 10:38 seq
crw-rw---- 1 root audio 116, 33 Mar  3 10:38 timer
# ls -l /dev/snd  # Arch

drwxr-xr-x  2 root root       80 Mar  3 15:46 by-path
crw-rw----+ 1 root audio 116,  3 Mar  3 15:46 controlC0
crw-rw----+ 1 root audio 116, 12 Mar  3 15:46 controlC1
crw-rw----+ 1 root audio 116,  2 Mar  3 15:46 hwC0D2
crw-rw----+ 1 root audio 116, 11 Mar  3 15:46 hwC1D0
crw-rw----+ 1 root audio 116, 10 Mar  3 15:46 hwC1D1
crw-rw----+ 1 root audio 116,  9 Mar  3 15:46 hwC1D2
crw-rw----+ 1 root audio 116,  8 Mar  3 15:46 hwC1D3
crw-rw----+ 1 root audio 116,  7 Mar  3 15:46 pcmC1D3p   # pcmC0Dxx missing!
crw-rw----+ 1 root audio 116,  6 Mar  3 15:46 pcmC1D7p
crw-rw----+ 1 root audio 116,  5 Mar  3 15:46 pcmC1D8p
crw-rw----+ 1 root audio 116,  4 Mar  3 15:46 pcmC1D9p
crw-rw----  1 root audio 116,  1 Mar  3 15:45 seq
crw-rw----+ 1 root audio 116, 33 Mar  3 15:45 timer
# aplay -l   # ArchBang

**** List of PLAYBACK Hardware Devices ****
card 0: M5461 [HDA ULI M5461], device 0: ALC880 Analog [ALC880 Analog]
  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
# aplay -l  # Arch

**** List of PLAYBACK Hardware Devices ****
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]  # ALC880 Analog missing!
  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
# lspci | grep -i audio  # Arch

00:1d.0 Audio device: ULi Electronics Inc. HD Audio Controller
01:00.1 Audio device: NVIDIA Corporation High Definition Audio Controller (rev a1)
# lsmod | grep '^snd'  # Arch

snd_hda_codec_hdmi     24753  4 
snd_hda_codec_realtek  52789  1 
snd_hda_intel          23352  0 
snd_hda_codec          86035  3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel
snd_hwdep               4843  1 snd_hda_codec
snd_pcm                63698  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
snd_page_alloc          6071  2 snd_pcm,snd_hda_intel
snd_timer              14903  1 snd_pcm
snd                    45066  7 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_hda_codec,snd_hda_intel

I am using the VGA port, not HDMI, for video.

I have extra/alsa-lib 1.0.26-1 and extra/alsa-utils 1.0.26-1 installled

I would like to know what is responsible for creating pcmC0Dxx devices and any configuration required for this.

Any assistance is appreciated.

Last edited by zorro (2013-03-09 19:13:31)

Offline

#2 2013-03-04 21:06:32

zorro
Member
Registered: 2011-11-18
Posts: 47

Re: [Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

Further searches on the web identified snddevices as the script that generates the sound devices. I found this in ftp://ftp.alsa-project.org/pub/driver/a … 25.tar.bz2

I captured the script and the commands it executed were

mknod /dev/mixer0 c 14 0
mknod /dev/mixer1 c 14 16
mknod /dev/mixer2 c 14 32
mknod /dev/mixer3 c 14 48
mknod /dev/sequencer c 14 1
mknod /dev/midi00 c 14 2
mknod /dev/midi01 c 14 18
mknod /dev/midi02 c 14 34
mknod /dev/midi03 c 14 50
mknod /dev/dsp0 c 14 3
mknod /dev/dsp1 c 14 19
mknod /dev/dsp2 c 14 35
mknod /dev/dsp3 c 14 51
mknod /dev/audio0 c 14 4
mknod /dev/audio1 c 14 20
mknod /dev/audio2 c 14 36
mknod /dev/audio3 c 14 52
mknod /dev/sndstat c 14 6
mknod /dev/music c 14 8
mknod /dev/dmmidi0 c 14 9
mknod /dev/dmmidi1 c 14 25
mknod /dev/dmmidi2 c 14 41
mknod /dev/dmmidi3 c 14 57
mknod /dev/dmfm0 c 14 10
mknod /dev/dmfm1 c 14 26
mknod /dev/dmfm2 c 14 42
mknod /dev/dmfm3 c 14 58
mknod /dev/amixer0 c 14 11
mknod /dev/amixer1 c 14 27
mknod /dev/amixer2 c 14 43
mknod /dev/amixer3 c 14 59
mknod /dev/adsp0 c 14 12
mknod /dev/adsp1 c 14 28
mknod /dev/adsp2 c 14 44
mknod /dev/adsp3 c 14 60
mknod /dev/amidi0 c 14 13
mknod /dev/amidi1 c 14 29
mknod /dev/amidi2 c 14 45
mknod /dev/amidi3 c 14 61
mknod /dev/admmidi0 c 14 14
mknod /dev/admmidi1 c 14 30
mknod /dev/admmidi2 c 14 46
mknod /dev/admmidi3 c 14 62
mknod /dev/snd/controlC0 c 116 0
mknod /dev/snd/controlC1 c 116 32
mknod /dev/snd/controlC2 c 116 64
mknod /dev/snd/controlC3 c 116 96
mknod /dev/snd/seq c 116 1
mknod /dev/snd/timer c 116 33
mknod /dev/snd/hwC0D0 c 116 4
mknod /dev/snd/hwC0D1 c 116 5
mknod /dev/snd/hwC0D2 c 116 6
mknod /dev/snd/hwC0D3 c 116 7
mknod /dev/snd/hwC1D0 c 116 36
mknod /dev/snd/hwC1D1 c 116 37
mknod /dev/snd/hwC1D2 c 116 38
mknod /dev/snd/hwC1D3 c 116 39
mknod /dev/snd/hwC2D0 c 116 68
mknod /dev/snd/hwC2D1 c 116 69
mknod /dev/snd/hwC2D2 c 116 70
mknod /dev/snd/hwC2D3 c 116 71
mknod /dev/snd/hwC3D0 c 116 100
mknod /dev/snd/hwC3D1 c 116 101
mknod /dev/snd/hwC3D2 c 116 102
mknod /dev/snd/hwC3D3 c 116 103
mknod /dev/snd/midiC0D0 c 116 8
mknod /dev/snd/midiC0D1 c 116 9
mknod /dev/snd/midiC0D2 c 116 10
mknod /dev/snd/midiC0D3 c 116 11
mknod /dev/snd/midiC0D4 c 116 12
mknod /dev/snd/midiC0D5 c 116 13
mknod /dev/snd/midiC0D6 c 116 14
mknod /dev/snd/midiC0D7 c 116 15
mknod /dev/snd/midiC1D0 c 116 40
mknod /dev/snd/midiC1D1 c 116 41
mknod /dev/snd/midiC1D2 c 116 42
mknod /dev/snd/midiC1D3 c 116 43
mknod /dev/snd/midiC1D4 c 116 44
mknod /dev/snd/midiC1D5 c 116 45
mknod /dev/snd/midiC1D6 c 116 46
mknod /dev/snd/midiC1D7 c 116 47
mknod /dev/snd/midiC2D0 c 116 72
mknod /dev/snd/midiC2D1 c 116 73
mknod /dev/snd/midiC2D2 c 116 74
mknod /dev/snd/midiC2D3 c 116 75
mknod /dev/snd/midiC2D4 c 116 76
mknod /dev/snd/midiC2D5 c 116 77
mknod /dev/snd/midiC2D6 c 116 78
mknod /dev/snd/midiC2D7 c 116 79
mknod /dev/snd/midiC3D0 c 116 104
mknod /dev/snd/midiC3D1 c 116 105
mknod /dev/snd/midiC3D2 c 116 106
mknod /dev/snd/midiC3D3 c 116 107
mknod /dev/snd/midiC3D4 c 116 108
mknod /dev/snd/midiC3D5 c 116 109
mknod /dev/snd/midiC3D6 c 116 110
mknod /dev/snd/midiC3D7 c 116 111
mknod /dev/snd/pcmC0D0p c 116 16
mknod /dev/snd/pcmC0D1p c 116 17
mknod /dev/snd/pcmC0D2p c 116 18
mknod /dev/snd/pcmC0D3p c 116 19
mknod /dev/snd/pcmC0D4p c 116 20
mknod /dev/snd/pcmC0D5p c 116 21
mknod /dev/snd/pcmC0D6p c 116 22
mknod /dev/snd/pcmC0D7p c 116 23
mknod /dev/snd/pcmC1D0p c 116 48
mknod /dev/snd/pcmC1D1p c 116 49
mknod /dev/snd/pcmC1D2p c 116 50
mknod /dev/snd/pcmC1D3p c 116 51
mknod /dev/snd/pcmC1D4p c 116 52
mknod /dev/snd/pcmC1D5p c 116 53
mknod /dev/snd/pcmC1D6p c 116 54
mknod /dev/snd/pcmC1D7p c 116 55
mknod /dev/snd/pcmC2D0p c 116 80
mknod /dev/snd/pcmC2D1p c 116 81
mknod /dev/snd/pcmC2D2p c 116 82
mknod /dev/snd/pcmC2D3p c 116 83
mknod /dev/snd/pcmC2D4p c 116 84
mknod /dev/snd/pcmC2D5p c 116 85
mknod /dev/snd/pcmC2D6p c 116 86
mknod /dev/snd/pcmC2D7p c 116 87
mknod /dev/snd/pcmC3D0p c 116 112
mknod /dev/snd/pcmC3D1p c 116 113
mknod /dev/snd/pcmC3D2p c 116 114
mknod /dev/snd/pcmC3D3p c 116 115
mknod /dev/snd/pcmC3D4p c 116 116
mknod /dev/snd/pcmC3D5p c 116 117
mknod /dev/snd/pcmC3D6p c 116 118
mknod /dev/snd/pcmC3D7p c 116 119
mknod /dev/snd/pcmC0D0c c 116 24
mknod /dev/snd/pcmC0D1c c 116 25
mknod /dev/snd/pcmC0D2c c 116 26
mknod /dev/snd/pcmC0D3c c 116 27
mknod /dev/snd/pcmC0D4c c 116 28
mknod /dev/snd/pcmC0D5c c 116 29
mknod /dev/snd/pcmC0D6c c 116 30
mknod /dev/snd/pcmC0D7c c 116 31
mknod /dev/snd/pcmC1D0c c 116 56
mknod /dev/snd/pcmC1D1c c 116 57
mknod /dev/snd/pcmC1D2c c 116 58
mknod /dev/snd/pcmC1D3c c 116 59
mknod /dev/snd/pcmC1D4c c 116 60
mknod /dev/snd/pcmC1D5c c 116 61
mknod /dev/snd/pcmC1D6c c 116 62
mknod /dev/snd/pcmC1D7c c 116 63
mknod /dev/snd/pcmC2D0c c 116 88
mknod /dev/snd/pcmC2D1c c 116 89
mknod /dev/snd/pcmC2D2c c 116 90
mknod /dev/snd/pcmC2D3c c 116 91
mknod /dev/snd/pcmC2D4c c 116 92
mknod /dev/snd/pcmC2D5c c 116 93
mknod /dev/snd/pcmC2D6c c 116 94
mknod /dev/snd/pcmC2D7c c 116 95
mknod /dev/snd/pcmC3D0c c 116 120
mknod /dev/snd/pcmC3D1c c 116 121
mknod /dev/snd/pcmC3D2c c 116 122
mknod /dev/snd/pcmC3D3c c 116 123
mknod /dev/snd/pcmC3D4c c 116 124
mknod /dev/snd/pcmC3D5c c 116 125
mknod /dev/snd/pcmC3D6c c 116 126
mknod /dev/snd/pcmC3D7c c 116 127
mknod /dev/aloadC0 c 116 0
mknod /dev/aloadC1 c 116 32
mknod /dev/aloadC2 c 116 64
mknod /dev/aloadC3 c 116 96
mknod /dev/aloadSEQ c 116 1

I was looking to manually create the devices but noticed the MAJOR & MINOR /* mknod [OPTION]... NAME TYPE [MAJOR MINOR] */ didn't align with the captures in the initial post, which themselves didn't align with each other.

/dev in the arch parition is empty when booting from a live distro, showing that all the devices are created at boot. udev?

Offline

#3 2013-03-08 19:29:11

zorro
Member
Registered: 2011-11-18
Posts: 47

Re: [Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

This post looks like it might now be more applicable to the "Kernel & Hardware" forum but I haven't found a way to move it.

Older versions of udev 151 & 173 both create pcmC0D0c etc, but versions 187, 196 & 197 don't.

I though it would be a useful exercise to compare the udev source code to see if I could find the reason but it is difficult with udev now being incorporated into systemd. I downloaded the source of a few versions from upstream but would have liked to have used the arch source. Is this is available on the mirrors?

Offline

#4 2013-03-09 09:35:38

litemotiv
Forum Fellow
Registered: 2008-08-01
Posts: 5,026

Re: [Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

zorro wrote:

This post looks like it might now be more applicable to the "Kernel & Hardware" forum but I haven't found a way to move it.

You can use the Report link (next to the Quote link) of the first post to send the moderators a request to move your thread.


ᶘ ᵒᴥᵒᶅ

Offline

#5 2013-03-09 11:47:12

zorro
Member
Registered: 2011-11-18
Posts: 47

Re: [Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

Solved - Additional searching through the arch forums revealed this problem was being investigated.

https://bbs.archlinux.org/viewtopic.php?id=158677

The suggestions there resulted in sound being generated.

#rmmod snd_hda_intel 
#modprobe snd_hda_intel model=3stack

This created the missing sound devices.

aplay, speaker-test and mplayer all worked great.

Now I have the answer, I can find it in the wiki but it would have helped lots if it had mentioned the missing devices. Wiki update?

Thanks.

Offline

#6 2013-03-09 11:50:53

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,963
Website

Re: [Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

zorro wrote:

This post looks like it might now be more applicable to the "Kernel & Hardware" forum but I haven't found a way to move it.

moved


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#7 2013-03-09 12:48:34

mich41
Member
Registered: 2012-06-22
Posts: 796

Re: [Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

Go to https://bugzilla.kernel.org/, register an account and file a bug for tree "mainline", product "drivers" and component "sound(alsa)". Examples.

Tell them what laptop/mobo it is and that it requires 3stack to enable any outputs.

EDIT: check if one isn't already filed smile

Last edited by mich41 (2013-03-09 12:53:13)

Offline

#8 2013-09-14 02:25:54

1LordAnubis
Member
Registered: 2008-10-10
Posts: 253
Website

Re: [Solved] ALSA PCM Devices Missing, pcmC0D0c etc. Realtek ALC880

zorro wrote:

Solved - Additional searching through the arch forums revealed this problem was being investigated.

https://bbs.archlinux.org/viewtopic.php?id=158677

The suggestions there resulted in sound being generated.

#rmmod snd_hda_intel 
#modprobe snd_hda_intel model=3stack

This created the missing sound devices.

aplay, speaker-test and mplayer all worked great.

Now I have the answer, I can find it in the wiki but it would have helped lots if it had mentioned the missing devices. Wiki update?

Thanks.

Had this problem with the ole alienware 7700 w/ the clevo d900t mobo
Note, you have to rmmod snd_hda_intel first, then modprobe snd_hda_intel model=3stack

keep in mind anything you have in your /etc/modprobe.d/* regarding the snd_hda_model will conflict with running the above commands


Any society that would give up a little liberty to gain a little security will deserve neither and lose both.
-Benjamin Franklin
The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man.
-George Bernard Shaw

Offline

Board footer

Powered by FluxBB