Unable to open hostless PCM device after introduction of commit - ASoC: Stop dummy from overriding hwparams

Patrick Lai quic_plai at quicinc.com
Fri Nov 18 18:17:42 CET 2022


Hi Amadeusz,

On the product I am working on, a hostless PCM device is defined for 
purpose of activating CODEC driver to setup the path inside CODEC. So, 
CPU DAI and PCM Platform are defined to use dummy dai & DMA supplied by 
sound/soc/soc-utils.c.

After upgrading to newer kernel, hostless PCM device failed to open. 
After doing a bit of digging, the root cause is that dummy_dma_hardware 
is not set in dummy_dma_open() due to new conditional check logic 
introduced in this commit - 6c504663ba2ee2abeaf5622e27082819326c1bd4.

In order to fix problem I am encountering properly without regressing 
your scenario, I would like to get a better understanding of problem you 
were addressing. My understanding, from looking through other drivers 
under sound/soc, is that pcm hardware info is usually set by PCM 
platform/DMA drivers. For your scenario, do you have other component e.g 
CPU/CODEC DAI, set PCM hardware definition? I am not sure conditional 
check logic from 6c504663ba2ee2abeaf5622e27082819326c1bd4 guarantees 
that other component would be setting pcm hardware info. Appreciate if 
you can provide more insight to your scenario?

Thanks
Patrick


More information about the Alsa-devel mailing list