[RFC PATCH 0/3] Separate BE DAI HW constraints from FE ones

Codrin.Ciubotariu at microchip.com Codrin.Ciubotariu at microchip.com
Tue Mar 23 15:18:28 CET 2021


On 23.03.2021 14:15, Jaroslav Kysela wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Dne 23. 03. 21 v 12:43 Codrin Ciubotariu napsal(a):
> 
>> To achieve this, the first thing needed is to detect whether a HW
>> constraint rule is enforced by a FE or a BE DAI. This means that
>> snd_pcm_hw_rule_add() needs to be able to differentiate between the two
>> type of DAIs. For this, the runtime pointer to struct snd_pcm_runtime is
>> replaced with a pointer to struct snd_pcm_substream, to be able to reach
>> substream->pcm->internal to differentiate between FE and BE DAIs.
> 
> Think about other not-so-invasive solution. What about to use
> 'runtime->private_data' (struct snd_soc_pcm_runtime *) to determine FE / BE?
> 

I think struct snd_soc_pcm_runtime * is placed in 
substream->private_data, while runtime->private_data is used more by the 
platform drivers. runtime->trigger_master could be an idea, but it looks 
like it's initialized just before the trigger callback is called, way 
after the constraint rules are added and I am not sure it can be 
initialized earlier...

Best regards,
Codrin


More information about the Alsa-devel mailing list