提交 cba72148 编写于 作者: M Miaoqian Lin 提交者: Zheng Zengkai

ASoC: samsung: Fix error handling in aries_audio_probe

stable inclusion
from stable-v5.10.137
commit ec0c272b18684e2fbef084b7ac6710f018a50265
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I60PLB

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ec0c272b18684e2fbef084b7ac6710f018a50265

--------------------------------

[ Upstream commit 3e2649c5 ]

of_get_child_by_name() returns a node pointer with refcount
incremented, we should use of_node_put() on it when not need anymore.
This function is missing of_node_put(cpu) in the error path.
Fix this by goto out label. of_node_put() will check NULL pointer.

Fixes: 7a3a7671 ("ASoC: samsung: Add driver for Aries boards")
Signed-off-by: NMiaoqian Lin <linmq006@gmail.com>
Reviewed-by: NKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20220603130640.37624-1-linmq006@gmail.comSigned-off-by: NMark Brown <broonie@kernel.org>
Signed-off-by: NSasha Levin <sashal@kernel.org>
Signed-off-by: NZheng Zengkai <zhengzengkai@huawei.com>
Reviewed-by: NWei Li <liwei391@huawei.com>
上级 38f0a3ab
...@@ -628,8 +628,10 @@ static int aries_audio_probe(struct platform_device *pdev) ...@@ -628,8 +628,10 @@ static int aries_audio_probe(struct platform_device *pdev)
return -EINVAL; return -EINVAL;
codec = of_get_child_by_name(dev->of_node, "codec"); codec = of_get_child_by_name(dev->of_node, "codec");
if (!codec) if (!codec) {
return -EINVAL; ret = -EINVAL;
goto out;
}
for_each_card_prelinks(card, i, dai_link) { for_each_card_prelinks(card, i, dai_link) {
dai_link->codecs->of_node = of_parse_phandle(codec, dai_link->codecs->of_node = of_parse_phandle(codec,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册