alsa-project/alsa-ucm-conf pull request #137 was opened from jeromebrunet: This adds the support for the GXL-P241 and the LIBRETECH-CC. I have proposed the related ucm-validator PR: https://github.com/alsa-project/alsa-tests/pull/23 I was not successful with txt check: ``` !!Sysfs card info !!--------------- Traceback (most recent call last): File "/home/jbrunet/work/generic/sound/alsa-tests/python/ucm-validator/./ucm.py", line 238, in <module> main(sys.argv) File "/home/jbrunet/work/generic/sound/alsa-tests/python/ucm-validator/./ucm.py", line 233, in main r = globals()[cmd](*argv[2:]) File "/home/jbrunet/work/generic/sound/alsa-tests/python/ucm-validator/./ucm.py", line 185, in do_configs errors, warnings = config_walk(alsainfo_path) File "/home/jbrunet/work/generic/sound/alsa-tests/python/ucm-validator/./ucm.py", line 129, in config_walk errors1, warnings1 = config_walk(path2) File "/home/jbrunet/work/generic/sound/alsa-tests/python/ucm-validator/./ucm.py", line 142, in config_walk info.load(path2) File "/home/jbrunet/work/generic/sound/alsa-tests/python/ucm-validator/../lib/alsainfo.py", line 314, in load raise AlsaInfoError("%s: unknown section %s" % (filename, repr(name))) alsainfo.AlsaInfoError: configs/Meson/LIBRETECH-CC.txt: unknown section 'Sysfs card info' ``` I also check with the dummy json: ``` *** configuration 'configs/Meson/GXL-P241.json' @ AlsaJsonSoundcard(json='GXL-P241', id='GXL-P241', driver='gx-sound-card', name='GXL-P241', longname='GXL-P241') *** Device file 'conf.d/gx-sound-card/GXL-P241.conf' Verb 'HiFi', file 'Meson/p241/p241-HiFi.conf' Device 'Line' Device 'HDMI' ERR: conf.d/gx-sound-card/GXL-P241.conf: Verb=HiFi Device=Line PlaybackPCM defined in SectionVerb ERR: AlsaJsonSoundcard(json='GXL-P241', id='GXL-P241', driver='gx-sound-card', name='GXL-P241', longname='GXL-P241') ERR: total errors: 1 ``` I'm not quite sure where to put the `PlaybackPCM`, if not in `Verb`. The `Device ` section in not a good fit, as far as I understand. On these devices, we have a single PCM interface. HDMI and Line Devices may be enabled on it (possibly simultaneously). Any suggestion ? Looking at pulseaudio, I'm quite happy with the result: ``` $ pactl list sinks Sink #0 State: SUSPENDED Name: alsa_output.platform-sound.HiFi__hw_LIBRETECHCC_0__sink Description: Built-in Audio HDMI + Analog Lineout Driver: module-alsa-card.c Sample Specification: s16le 2ch 44100Hz Channel Map: front-left,front-right Owner Module: 6 Mute: no Volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB balance 0.00 Base Volume: 65536 / 100% / 0.00 dB Monitor Source: alsa_output.platform-sound.HiFi__hw_LIBRETECHCC_0__sink.monitor Latency: 0 usec, configured 0 usec Flags: HARDWARE DECIBEL_VOLUME LATENCY Properties: alsa.resolution_bits = "16" device.api = "alsa" device.class = "sound" alsa.class = "generic" alsa.subclass = "generic-mix" alsa.name = "" alsa.id = "fe.dai-link-0 (*)" alsa.subdevice = "0" alsa.subdevice_name = "subdevice #0" alsa.device = "0" alsa.card = "0" alsa.card_name = "LIBRETECH-CC" alsa.long_card_name = "LIBRETECH-CC" alsa.driver_name = "snd_soc_meson_gx_sound_card" device.bus_path = "platform-sound" sysfs.path = "/devices/platform/sound/sound/card0" device.form_factor = "internal" device.string = "_ucm0001.hw:LIBRETECHCC,0" device.buffering.buffer_size = "352768" device.buffering.fragment_size = "176384" device.access_mode = "mmap+timer" device.profile.name = "HiFi: hw:LIBRETECHCC,0: sink" device.profile.description = "HDMI + Analog Lineout" alsa.mixer_device = "_ucm0001.hw:LIBRETECHCC" device.description = "Built-in Audio HDMI + Analog Lineout" module-udev-detect.discovered = "1" device.icon_name = "audio-card" Ports: [Out] HDMI: HDMI (type: HDMI, priority: 100, availability unknown) [Out] Line: Analog Lineout (type: Line, priority: 100, availability unknown) Active Port: [Out] HDMI Formats: pcm ``` Request URL : https://github.com/alsa-project/alsa-ucm-conf/pull/137 Patch URL : https://github.com/alsa-project/alsa-ucm-conf/pull/137.patch Repository URL: https://github.com/alsa-project/alsa-ucm-conf