Hi Mark, Johan, Brian again
I noticed this patch-set still have issue. Please drop it. Sorry for my noise
These are v2 of Component level pcm_new/free patches. I think current ALSA SoC need to cleanup and move to new style. Then, current all CPU/Codec/Platform features needs to be merged into "component" (and remove CPU/Codec/Platform categorize). My previous pcm_new/free patch had wrong operation, thus Johan, Brian got damage from it. I'm so sorry about that.
Current ALSA SoC has rtd->platform, but it should be removed in new style, I think. So, this patch adds new "component list" for rtd (= I named it as rtdcom, maybe we want to have more nice naming). This list includes all components (= CPU/Codec/Platform), not only platform component.
I'm thinking that rtd->platform related operation will be replaced like below
- if(rtd->platform->xxx)
rtd->platform->xxx(yyy);
- for_each_rtdcom(rtd, rtdcom) {
component = rtdcom->component; /* rtd connected CPU/Codec/Platform */
if (component->xxx)
component->xxx(yyy);
- }
Here, xxxx is pcm_new/free on this patch. If my understanding was correct, this v2 pcm_new/free works well for you, but I don't know. So, can you please test these patches ? These are based on mark/fix/multi-pcm
Kuninori Morimoto (3): ASoC: soc-core: add snd_soc_rtdcom_xxx() ASoC: use snd_soc_rtdcom_add() and convert to consistent operation ASoC: add Component level pcm_new/pcm_free v2
Best regards
Kuninori Morimoto