> On 11/03/2024 08:33, Chancel Liu wrote: > >>> @@ -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 > > > > Thanks for your reminder. Truly I shouldn't use undocumented bindings. I > will > > use “fsl,rpmsg-channel-name” to refine patch set. Please help review next > > version. > > Instead of hard-coding node names in the driver you want to put it in > "fsl,rpmsg-channel-name" property? I don't follow. I recommended instead > using phandles, care to address that? imx-rpmsg is ASoC machine driver and fsl_rpmsg is ASoC CPU DAI driver. In imx-rpmsg, driver needs to get CPU DAI DT node for hardware configuration. So imx-rpmsg needs some "information" to find the correct DT node. As you recommended, it's not wise to use hard-coding node name. Also the device of imx-rpmsg is created by imx-audio-rpmsg so it can't directly get phandle of CPU DAI node. Sorry for unclear statement. "fsl,rpmsg-channel-name" is the property of rpmsg channel name. Each rpmsg sound card sits on one rpmsg channel. So I decide to use rpmsg channel name to connect all parts of this sound card. If the CPU DAI is registerd with rpmsg channel name then imx-rpmsg can easily get the DT node by this name. Regards, Chancel Liu