On Sun, 3 Apr 2022, at 10:27 PM, Navtej Bhatti wrote: > On my `kblda7219max` Chromebook (baseboard: NAMI), internal audio works > properly when the following conditions are met: > * Kernel 5.10.70 (ChromeOS fork) is used (the latest ChromeOS kernel > has some kind of topology-related kernel bug) > * FW is copied from the ChromeOS rootfs to Linux > * UCM is converted to UCM2 > * Only ALSA is used > > However, whenever I start PulseAudio (`pulseaudio -vvvv`), audio is > disabled, going to a dummy output. > > PulseAudio passes through probing for the UCM files but errors out in > this particular spot: > ``` > I: [pulseaudio] (alsa-lib)pcm_hw.c: SNDRV_PCM_IOCTL_PREPARE failed (-22) > I: [pulseaudio] alsa-util.c: snd_pcm_hw_params failed: Invalid argument > D: [pulseaudio] alsa-util.c: Trying hw:kblda7219max,0 without > SND_PCM_NO_AUTO_FORMAT ... > D: [pulseaudio] alsa-util.c: Managed to open hw:kblda7219max,0 > D: [pulseaudio] alsa-util.c: Maximum hw buffer size is 21845 ms > I: [pulseaudio] (alsa-lib)pcm_hw.c: SNDRV_PCM_IOCTL_PREPARE failed (-22) > I: [pulseaudio] (alsa-lib)pcm_hw.c: SNDRV_PCM_IOCTL_PREPARE failed (-22) > I: [pulseaudio] (alsa-lib)pcm_hw.c: SNDRV_PCM_IOCTL_PREPARE failed (-22) > I: [pulseaudio] (alsa-lib)pcm_hw.c: SNDRV_PCM_IOCTL_PREPARE failed (-22) > ``` > which causes it to say: > ``` > E: [pulseaudio] module-alsa-card.c: Failed to find a working profile. > E: [pulseaudio] module.c: Failed to load module "module-alsa-card" > (argument: "device_id="0" name="platform-kbl_da7219_mx98357a" > card_name="alsa_card.platform-kbl_da7219_mx98357a" namereg_fail=false > tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes > use_ucm=yes avoid_resampling=no > card_properties="module-udev-detect.discovered=1""): initialization > failed. > ``` > > My `dmesg` gets filled with: > ``` > Kbl Audio Port: ASoC: no backend DAIs enabled for Kbl Audio Port > Kbl Audio Port: ASoC: dpcm_fe_dai_prepare() failed (-22) > ``` > > However, once I kill PulseAudio and run `alsaucm -c kblda7219max set > _verb HiFi set _enadev Speaker`, audio begins working again (but this > is in pure ALSA and PA apps are not compatible) and the `no backend > DAIs enabled for Kbl Audio Port` is no longer logged to `dmesg`. > > I think this is a UCM issue because the audio is working fine > kernel-level and with ALSA, but PulseAudio seems to mess something up > with the UCM and the UCM needs to be set again. > > I ended up removing the Front Mic, Rear Mic, and Mic, all of which were > connected to PCM3. PulseAudio worked, but I ended up frying (you could > smell something burning) my speaker, even at minimum volume :). I've > seen others document this. ALSA exhibits no such behavior (it worked > with apulse for months), but PulseAudio is able to burn your speaker. > It surprises me because PA operates only in the userspace. > > This whole setup is reproducible with my project, Breath, located here > <https://github.com/cb-linux/breath>. > Attachments: > * kblda7219max.conf.txt > * HiFi.conf.txt > * pulseaudio-log.txt > * alsa-info (4).txt Thanks for the detailed report Navtej. Could you file this on the bug tracker so we can potentially track this better? https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues Cheers, Arun