On 2018年05月28日 21:43, Liam Girdwood wrote:
On Mon, 2018-05-28 at 18:24 +0800, Keyon Jie wrote:
Hi Liam,
During enabling #1, I found that we may need create snd_soc_dai_driver dynamically, currently we only have one cpu_dai for SOF, how do you think we should change for multiple cpu_dai support, or we actually don't need that?
Thanks, ~Keyon
/*
- SOF Device Level.
*/ struct snd_sof_dev { ... /* ASoC components */ struct snd_soc_platform_driver plat_drv; const struct snd_soc_component_driver *cmpnt_drv; struct snd_soc_dai_driver dai_drv; //Liam: we have only one dai_ driver here.
The SOF DAI driver is a dummy type, so it has no logic, it's only used for binding DAI links. i.e. it does not matter when used to bind SSP and DMICs.
int num_dai; // Liam: so we can't support > 1 dais here?
Yes, untested.
I mean that in snd_soc_register_dais(), it require dai_drv array for count > 1 case, so when setting num_dai > 1, there will be mismatch here and memory invalid access here:
soc_add_dai(component, dai_drv + i, count == 1 && legacy_dai_naming)
Thanks, ~Keyon
... }
Liam _______________________________________________ Sound-open-firmware mailing list Sound-open-firmware@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/sound-open-firmware