On 07/03/2024 08:44, Chancel Liu wrote: > Platform device for card to probe is registered in imx-audio-rpmsg. > According to this change DT node of ASoC CPU DAI device is updated. > > Signed-off-by: Chancel Liu <chancel.liu@xxxxxxx> > --- > sound/soc/fsl/imx-rpmsg.c | 21 ++++++++++++++++++--- > 1 file changed, 18 insertions(+), 3 deletions(-) > > diff --git a/sound/soc/fsl/imx-rpmsg.c b/sound/soc/fsl/imx-rpmsg.c > index e5bd63dab10c..2686125b3043 100644 > --- a/sound/soc/fsl/imx-rpmsg.c > +++ b/sound/soc/fsl/imx-rpmsg.c > @@ -108,10 +108,9 @@ static int imx_rpmsg_late_probe(struct snd_soc_card *card) > static int imx_rpmsg_probe(struct platform_device *pdev) > { > struct snd_soc_dai_link_component *dlc; > - struct device *dev = pdev->dev.parent; > /* rpmsg_pdev is the platform device for the rpmsg node that probed us */ > - struct platform_device *rpmsg_pdev = to_platform_device(dev); > - struct device_node *np = rpmsg_pdev->dev.of_node; > + struct platform_device *rpmsg_pdev = NULL; > + struct device_node *np = NULL; > struct of_phandle_args args; > const char *platform_name; > struct imx_rpmsg *data; > @@ -127,6 +126,22 @@ static int imx_rpmsg_probe(struct platform_device *pdev) > goto fail; > } > > + if (!strcmp(pdev->dev.platform_data, "rpmsg-micfil-channel")) > + np = of_find_node_by_name(NULL, "rpmsg_micfil"); > + else > + np = of_find_node_by_name(NULL, "rpmsg_audio"); Why do you create ABI on node names? Where is it documented? Why can't you use phandles? Best regards, Krzysztof