Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ASoC: mediatek: mt6359: Fix DT parse error due to wrong child node name

A recent dtbs_check error fix in mt6359.dtsi file changed a node name
(from "mt6359codec" to "audio-codec") without modifying the mt6539
codec code that uses it.
It leads to a probe failure after devicetree parsing returns in error:
```
[ 1.354025] mt6359-sound mt6359-sound: mt6359_platform_driver_probe() failed to parse dts
[ 1.355066] mt6359-sound mt6359-sound: probe with driver mt6359-sound failed with error -22
```

So, add the child node retrieval with the new name and if not found,
try with the older one for backward compatibility.

Fixes: 76b35f59bbe6 ("arm64: dts: mediatek: mt6359: fix dtbs_check error for audio-codec")
Signed-off-by: Louis-Alexis Eyraud <louisalexis.eyraud@collabora.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://patch.msgid.link/20250228-mt6359-fix-probe-failed-v1-1-64941d387b2c@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Louis-Alexis Eyraud and committed by
Mark Brown
79c080c7 a02c42d4

+6 -3
+6 -3
sound/soc/codecs/mt6359.c
··· 2867 2867 struct device *dev = priv->dev; 2868 2868 struct device_node *np; 2869 2869 2870 - np = of_get_child_by_name(dev->parent->of_node, "mt6359codec"); 2871 - if (!np) 2872 - return -EINVAL; 2870 + np = of_get_child_by_name(dev->parent->of_node, "audio-codec"); 2871 + if (!np) { 2872 + np = of_get_child_by_name(dev->parent->of_node, "mt6359codec"); 2873 + if (!np) 2874 + return -EINVAL; 2875 + } 2873 2876 2874 2877 ret = of_property_read_u32(np, "mediatek,dmic-mode", 2875 2878 &priv->dmic_one_wire_mode);