On Sat, Mar 19, 2022 at 07:41:09PM +0800, Jiaxin Yu wrote: > static int mt8192_mt6359_dev_probe(struct platform_device *pdev) [...] > + hdmi_codec = of_parse_phandle(pdev->dev.of_node, "mediatek,hdmi-codec", 0); > + if (!hdmi_codec) { > ret = -EINVAL; > - goto put_platform_node; > + dev_err_probe(&pdev->dev, ret, "Property 'hdmi-codec' missing or invalid\n"); > + goto err_hdmi_codec; > } > - card->dev = &pdev->dev; > > - hdmi_codec = of_parse_phandle(pdev->dev.of_node, > - "mediatek,hdmi-codec", 0); > + speaker_codec = of_get_child_by_name(pdev->dev.of_node, "mediatek,speaker-codec"); > + if (!speaker_codec) { > + ret = -EINVAL; > + dev_err_probe(&pdev->dev, ret, "Property 'speaker_codec' missing or invalid\n"); > + goto err_speaker_codec; > + } (to be neat) Does it have any reason to prevent from using of_parse_phandle() but of_get_child_by_name()?