You are not logged in.

#1 2019-01-08 18:21:00

virchau13
Member
Registered: 2018-09-26
Posts: 10

Only one sound card detected if that one is plugged in?

I have what ALSA detects as three sound cards on my system: Intel PCH, Nvidia, and my ATR2500-USB microphone. If I have my microphone plugged in while the computer is booting, ALSA will only detect that device and list no others.

What is detected with my microphone plugged in:

cat /proc/asound/cards

 0 [microphone     ]: USB-Audio - ATR USB microphone
                      Audio-Technica ATR USB microphone at usb-0000:00:14.0-5, full speed

aplay -l

card 0: microphone [ATR USB microphone], device 0: USB Audio [USB Audio]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

dmesg lists a problem:

[ 1511.049973] snd_hda_intel 0000:01:00.1: cannot find the slot for index 0 (range 0-0), error: -16
[ 1511.049979] snd_hda_intel 0000:01:00.1: Error creating card!
[ 1511.050029] snd_hda_intel: probe of 0000:01:00.1 failed with error -16

If I proceed to:

rmmod snd_hda_intel

unplug microphone

modprobe snd_hda_intel

plug microphone in

Then sound comes back on normally:

 0 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xdf240000 irq 133
 1 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xdf080000 irq 17
 2 [microphone     ]: USB-Audio - ATR USB microphone
                      Audio-Technica ATR USB microphone at usb-0000:00:14.0-5, full speed
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
  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 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: microphone [ATR USB microphone], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0


This is my /etc/modprobe.d/alsa-base.conf:

options snd_hda_intel index=0

That is the only manual configuration I have done on my system for ALSA/pulseaudio.

Any help would be appreciated.

Offline

#2 2019-01-08 19:28:29

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,430

Re: Only one sound card detected if that one is plugged in?

Either configure  all indices, or use the slots functionality. you can change your alsa-base.conf to

options snd_hda_intel index=0
options snd_usb_audio index=-2 #This instructs ALSA to simply load the USB module with any free index BUT index 0, just set it to 2 if you want it to be deterministic here

or

options snd slots=snd-hda-intel,snd-usb-audio

What happens right now is that due to the indeterministic nature of device detection there's a chance that your USB device is enumerated first, it's driver is loaded first and occupies index=0, when the kernel comes around to loading your integrated card, your options line wants to force snd_hda_intel to index=0 but that is already occupied and so it fails.

Last edited by V1del (2019-01-09 15:15:02)

Offline

Board footer

Powered by FluxBB