[alsa-devel] [PATCH 5/6] ASoC: add Component level struct snd_compr_ops

Kuninori Morimoto kuninori.morimoto.gx at renesas.com
Wed Dec 21 01:42:21 CET 2016


Hi Charles

Thank you for your feedback

> > 	for_each_component(component, rtd->card) {
> > 		const struct snd_compr_ops *compr_ops = component->compr_ops;
> > 
> > 		/* FIXME: 1st compr_ops only at this point */
> > 		if (compr_ops && compr_ops->open) {
> 
> But how do you know this is the correct compressed open here? The
> system could have multiple platforms providing compressed ops and
> you have just picked the first one in the card list. I think you
> are making the assumption that there is only one platform
> providing compressed ops and that seems like a very dangerous
> assumption to me. Our CODECs provide some compressed features as
> do many applications processors, which would easily give you at
> two platforms. But I could even imagine APs registering multiple
> compressed platforms for different DSPs or some such.

I agree your opinion, and yes it can be issue in the future.
But, this is the reason why it has /* FIXME */ comment here
(will has in v2, not yet in v1).
I don't know which one should be solved first, but this
patch is focusing to part of platform -> component conversion now.
No existing code/card get damage at this point, I think ?

So, how about this in v2 ?
In comment and git log indicates
"It is still assumeing that system has 1 compressed,
same as current situation. Multi-compress is TBD."

Best regards
---
Kuninori Morimoto


More information about the Alsa-devel mailing list