]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ASoC: simple-card-utils: Check device node before overwrite direction
authorShengjiu Wang <shengjiu.wang@nxp.com>
Mon, 29 Dec 2025 09:04:32 +0000 (17:04 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 5 Jan 2026 13:14:44 +0000 (13:14 +0000)
Even the device node don't exist, the graph_util_parse_link_direction()
will overwrite the playback_only and capture_only to be zero. Which
cause the playback_only and capture_only are not correct, so check device
node exist or not before update the value.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://patch.msgid.link/20251229090432.3964848-1-shengjiu.wang@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/generic/simple-card-utils.c

index 355f7ec8943c24ab46a5aef4eb795c4bc3e5264c..bdc02e85b089fe208812f612f1c659e3bad5cdf1 100644 (file)
@@ -1179,9 +1179,9 @@ void graph_util_parse_link_direction(struct device_node *np,
        bool is_playback_only = of_property_read_bool(np, "playback-only");
        bool is_capture_only  = of_property_read_bool(np, "capture-only");
 
-       if (playback_only)
+       if (np && playback_only)
                *playback_only = is_playback_only;
-       if (capture_only)
+       if (np && capture_only)
                *capture_only = is_capture_only;
 }
 EXPORT_SYMBOL_GPL(graph_util_parse_link_direction);