Troubleshooting ALSA configuration files parsing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear readers,

I'm running my own distro built w/ Yocto and my /etc/asound.conf is seemingly ignored entirely.

I have been working at figuring out why for 3 days already and am running out of ideas. I would welcome any help the readers of this list can kindly spare.

The hardware platform is a Raspberry Pi 3 B+ with a Hifiberrry DAC connected over I2S.
The software environment is a custom Linux distro built w/ Yocto. Kernel is 5.15.34. ALSA is 1.2.6. No other audio backend (e.g. Pipewire) is installed.
The system has 3 working soundcards (see aplay -l output below), with matching PCMs.

I reproduce the issue with a small simple /etc/asound.conf containing :
pcm.volumioHw {
    type hw
    card "sndrpihifiberry"
}

Thank you for your time & consideration,

Guillaume

——————————————————————————


I have tried quite a few things already:

1) setting CONFIG_SND_DEBUG=y & CONFIG_SND_DEBUG_VERBOSE=y and making sure /sys/module/snd/parameters/debug = 2
—> Not much in journaldNothing relevant as far as I can tell 

2) checking if the soundcard's kernel module has a debug flag which we can enable with "modinfo -p”
—> no option available for snd_soc_rpi_simple_soundcard

3) checking every path listed in /usr/share/alsa/alsa.conf for conflicting conf files
        • /var/lib/alsa/conf.d
        • /usr/etc/alsa/conf.d
        • /etc/alsa/conf.d
        • /etc/asound.conf
        • /usr/etc/asound.conf
        • ~/.asoundrc
        • $XDG_CONFIG_HOME/alsa/asoundrc
—> only my /etc/asound.conf exists


——————————————————————————


There are also things I HAVEN’T tried:
1) stracing whatever handles conf files parsing. I don’t know what process to actually strace.
2) enabling kernel dynamic debug. I don’t know what module to enable debug logs for.



——————————————————————————


Here is the output of alsa-info.sh for further reference:

upload=true&script=true&cardinfo=
!!################################
!!ALSA Information Script v 0.5.1
!!################################

!!Script ran on: Wed Mar 29 15:36:21 UTC 2023


!!Linux Distribution
!!------------------




!!DMI Information
!!---------------

Manufacturer:      
Product Name:      
Product Version:   
Firmware Version:  
System SKU:        
Board Vendor:      
Board Name:        


!!ACPI Device Status Information
!!---------------



!!Kernel Information
!!------------------

Kernel release:    5.15.34-v8
Operating System:  GNU/Linux
Architecture:      aarch64
Processor:         unknown
SMP Enabled:       Yes


!!ALSA Version
!!------------

Driver version:     k5.15.34-v8
Library version:    1.2.6.1
Utilities version:  1.2.6


!!Loaded ALSA modules
!!-------------------



!!Sound Servers on this system
!!----------------------------

No sound servers found.


!!Soundcards recognised by ALSA
!!-----------------------------

 0 [b1             ]: bcm2835_hdmi - bcm2835 HDMI 1
                      bcm2835 HDMI 1
 1 [Headphones     ]: bcm2835_headpho - bcm2835 Headphones
                      bcm2835 Headphones
 2 [sndrpihifiberry]: RPi-simple - snd_rpi_hifiberry_dac
                      snd_rpi_hifiberry_dac


!!Modprobe options (Sound related)
!!--------------------------------

snd_bcm2835: enable_compat_alsa=0
snd_bcm2835: enable_hdmi=1


!!Loaded sound module options
!!---------------------------


!!Sysfs card info
!!---------------

!!Card: /sys/class/sound/card0
Driver: /sys/bus/platform/drivers/bcm2835_audio
Tree:
	/sys/class/sound/card0
	|-- controlC0
	|   |-- dev
	|   |-- device -> ../../card0
	|   |-- power
	|   |-- subsystem -> ../../../../../../../../class/sound
	|   `-- uevent
	|-- device -> ../../../bcm2835_audio
	|-- id
	|-- number
	|-- pcmC0D0p
	|   |-- dev
	|   |-- device -> ../../card0
	|   |-- pcm_class
	|   |-- power
	|   |-- subsystem -> ../../../../../../../../class/sound
	|   `-- uevent
	|-- power
	|   |-- autosuspend_delay_ms
	|   |-- control
	|   |-- runtime_active_time
	|   |-- runtime_status
	|   `-- runtime_suspended_time
	|-- subsystem -> ../../../../../../../class/sound
	`-- uevent

!!Card: /sys/class/sound/card1
Driver: /sys/bus/platform/drivers/bcm2835_audio
Tree:
	/sys/class/sound/card1
	|-- controlC1
	|   |-- dev
	|   |-- device -> ../../card1
	|   |-- power
	|   |-- subsystem -> ../../../../../../../../class/sound
	|   `-- uevent
	|-- device -> ../../../bcm2835_audio
	|-- id
	|-- number
	|-- pcmC1D0p
	|   |-- dev
	|   |-- device -> ../../card1
	|   |-- pcm_class
	|   |-- power
	|   |-- subsystem -> ../../../../../../../../class/sound
	|   `-- uevent
	|-- power
	|   |-- autosuspend_delay_ms
	|   |-- control
	|   |-- runtime_active_time
	|   |-- runtime_status
	|   `-- runtime_suspended_time
	|-- subsystem -> ../../../../../../../class/sound
	`-- uevent

!!Card: /sys/class/sound/card2
Driver: /sys/bus/platform/drivers/snd-rpi-simple
Tree:
	/sys/class/sound/card2
	|-- controlC2
	|   |-- dev
	|   |-- device -> ../../card2
	|   |-- power
	|   |-- subsystem -> ../../../../../../../class/sound
	|   `-- uevent
	|-- device -> ../../../soc:sound
	|-- id
	|-- number
	|-- pcmC2D0p
	|   |-- dev
	|   |-- device -> ../../card2
	|   |-- pcm_class
	|   |-- power
	|   |-- subsystem -> ../../../../../../../class/sound
	|   `-- uevent
	|-- power
	|   |-- autosuspend_delay_ms
	|   |-- control
	|   |-- runtime_active_time
	|   |-- runtime_status
	|   `-- runtime_suspended_time
	|-- subsystem -> ../../../../../../class/sound
	`-- uevent


!!ALSA Device nodes
!!-----------------

crw-rw----    1 root     audio     116,   0 Mar 29 17:07 /dev/snd/controlC0
crw-rw----    1 root     audio     116,  32 Mar 29 17:07 /dev/snd/controlC1
crw-rw----    1 root     audio     116,  64 Mar 29 17:07 /dev/snd/controlC2
crw-rw----    1 root     audio     116,  16 Mar 29 17:07 /dev/snd/pcmC0D0p
crw-rw----    1 root     audio     116,  48 Mar 29 17:07 /dev/snd/pcmC1D0p
crw-rw----    1 root     audio     116,  80 Mar 29 17:07 /dev/snd/pcmC2D0p
crw-rw----    1 root     audio     116,   1 Mar 29 17:07 /dev/snd/seq
crw-rw----    1 root     audio     116,  33 Mar 29 17:07 /dev/snd/timer

/dev/snd/by-path:
drwxr-xr-x    2 root     root            80 Mar 29 17:07 .
drwxr-xr-x    3 root     root           220 Mar 29 17:07 ..
lrwxrwxrwx    1 root     root            12 Mar 29 17:07 platform-bcm2835_audio -> ../controlC1
lrwxrwxrwx    1 root     root            12 Mar 29 17:07 platform-soc:sound -> ../controlC2


!!ALSA configuration files
!!------------------------

!!System wide config file (/etc/asound.conf)

pcm.volumioHw {
    type hw
    card "sndrpihifiberry"
}


!!Aplay/Arecord output
!!--------------------

APLAY

**** List of PLAYBACK Hardware Devices ****
card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]
  Subdevices: 4/4
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
card 1: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
  Subdevices: 4/4
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
card 2: sndrpihifiberry [snd_rpi_hifiberry_dac], device 0: HifiBerry DAC HiFi pcm5102a-hifi-0 [HifiBerry DAC HiFi pcm5102a-hifi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

ARECORD

**** List of CAPTURE Hardware Devices ****

!!Amixer output
!!-------------

!!-------Mixer controls for card b1

Card sysdefault:0 'b1'/'bcm2835 HDMI 1'
  Mixer name	: 'Broadcom Mixer'
  Components	: ''
  Controls      : 2
  Simple ctrls  : 1
Simple mixer control 'HDMI',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback -10239 - 400
  Mono: Playback 0 [96%] [0.00dB] [on]

!!-------Mixer controls for card Headphones

Card sysdefault:1 'Headphones'/'bcm2835 Headphones'
  Mixer name	: 'Broadcom Mixer'
  Components	: ''
  Controls      : 2
  Simple ctrls  : 1
Simple mixer control 'Headphone',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback -10239 - 400
  Mono: Playback -2000 [77%] [-20.00dB] [on]

!!-------Mixer controls for card sndrpihifiberry

Card sysdefault:2 'sndrpihifiberry'/'snd_rpi_hifiberry_dac'
  Mixer name	: ''
  Components	: ''
  Controls      : 0
  Simple ctrls  : 0


!!Alsactl output
!!--------------

--startcollapse--
state.b1 {
	control.1 {
		iface MIXER
		name 'HDMI Playback Volume'
		value 0
		comment {
			access 'read write'
			type INTEGER
			count 1
			range '-10239 - 400'
			dbmin -9999999
			dbmax 400
			dbvalue.0 0
		}
	}
	control.2 {
		iface MIXER
		name 'HDMI Playback Switch'
		value true
		comment {
			access 'read write'
			type BOOLEAN
			count 1
		}
	}
}
state.Headphones {
	control.1 {
		iface MIXER
		name 'Headphone Playback Volume'
		value -2000
		comment {
			access 'read write'
			type INTEGER
			count 1
			range '-10239 - 400'
			dbmin -9999999
			dbmax 400
			dbvalue.0 -2000
		}
	}
	control.2 {
		iface MIXER
		name 'Headphone Playback Switch'
		value true
		comment {
			access 'read write'
			type BOOLEAN
			count 1
		}
	}
}
state.sndrpihifiberry {
	control {
	}
}
--endcollapse--


!!All Loaded Modules
!!------------------

bcm2835_codec
bcm2835_isp
bcm2835_mmal_vchiq
bcm2835_v4l2
fuse
ipv6
mc
nfsd
raspberrypi_hwmon
regmap_mmio
rfkill
sch_fq_codel
sdhci_iproc
snd_bcm2835
snd_soc_bcm2835_i2s
snd_soc_pcm5102a
snd_soc_rpi_simple_soundcard
uio
uio_pdrv_genirq
v4l2_mem2mem
vc_sm_cma
videobuf2_common
videobuf2_dma_contig
videobuf2_memops
videobuf2_v4l2
videobuf2_vmalloc
videodev


!!ALSA/HDA dmesg
!!--------------

[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 249984
[    0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 video=HDMI-A-1:1920x1080M@60 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  dwc_otg.lpm_enable=0 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait logo.nologo
[    0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
--
[    3.291709] of_cfs_init: OK
[    3.298933] ALSA device list:
[    3.304440]   No soundcards found.
[    3.310735] Waiting for root device /dev/mmcblk0p2...
--
[    6.836072] audit: type=1334 audit(1680102470.170:3): prog-id=6 op=LOAD
[    7.621873] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[    7.633856] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
--
[    7.651720] [vc_sm_connected_init]: start
[    7.700969] bcm2835_audio bcm2835_audio: card created with 4 channels
[    7.726147] mc: Linux media interface: v0.10
[    7.740401] [vc_sm_connected_init]: installed successfully
[    7.747054] bcm2835_audio bcm2835_audio: card created with 4 channels
[    7.896829] videodev: Linux video capture interface: v2.00

_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user




[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux