On Thu, Dec 14, 2017 at 03:07:30AM +0000, Kuninori Morimoto wrote:
Hi Mark
Thank you for your feedback
Because many drivers are directly using rtd->codec_dai / rtd->cpu_dai, and it is difficult to lookup CPU/Codec DAI from non categorize DAIs. Thus, we can't support non-categorized DAI at this point.
Now Vinod want to use Multi CPU DAI. If we can support Multi CPU DAI / Multi Codec DAI, we can cleanup current DAI code more. But what do you think ?
Thanks Morimoto San for initiating the thread,
Cleaning things up so we don't need to use rtd->cpu_dai and rtd->codec_dai would definitely be nice, it's also useful for CODEC<->CODEC links. Off the top of my head wrapping the accesses with macros/functions then implementing a way of getting the DAI behind them would be tractable?
Yes but one of the problems I see that we have specific ordering on the DAI ops between various components, is that a specific requirement?
About cleanup rtd->cpu_dai / rtd->codec_dai topic, I don't know we can do it at this point. But, I'm happy to think about it. I'm thinking like this 1st step: add Multi CPU support
Okay we will send the patches for this by next week or so...
2nd step: Share code between CPU/Codec DAI
And then discuss how to make it common
3rd step: think about No-Categorized DAI (if possible) Because many drivers are directly using rtd->cpu_dai, rtd->codec_dai
We should fix that part while at it. I guess drivers needs own dai, possibly for name or some data, so if they have helpers for that, we should be able to remove those..