On 11/04/2024 16:38, Jaroslav Kysela wrote: > On 11. 04. 24 15:15, Péter Ujfalusi wrote: > >> [B] Using UCM >> https://github.com/ujfalusi/alsa-ucm-conf/tree/topic/sof-hdmi > > This is only way to go. The configuration for "legacy" PCM device names > should be handled through UCM (when UCM config exists for this hw). OK, I will drop the other option. >> Should we add some parameter to 'amixer -c0 info', like ipc_version:4/3, >> so if the ipc_version is 3 or missing we assume that passthrough is not >> supported? > > UCM must be able to detect sound card capabilities. For passthrough, > there should be some controls for AES bits which may be used for the > conditional matching. If it's not sufficient, a hint to the components > string (mixer info structure) may be added by the driver. Also PCM name > or subname may be matched for a substring, if you like (seems more > related than the components string). Thanks for the advice! I have now something really working in a way it should be. The kernel will add "hdmi-pt:1" to the card's components when HDMI passthrough is possible (IPC4, ChainDMA enabled for HDMI PCM). [1] UCM will use the existence of "hdmi-pt:1" to decide to create the needed mapping PCMs [2] [1] https://github.com/thesofproject/linux/pull/4921 [2] https://github.com/ujfalusi/alsa-ucm-conf/tree/topic/sof-hdmi I'm not sure about the "hdmi-pt:1", can we just have plain "hdmi-pt" or we need a param:value pair always? There are still funky things done in the UCM patch due to lack of experience with it. I guess I should create a formal PR to get it reviewed and correct, right? Thank you, Péter