diff options
author | Chen Ni <nichen@iscas.ac.cn> | 2023-10-24 11:07:38 +0300 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2023-12-14 20:20:23 +0300 |
commit | afe6fcb9775882230cd29b529203eabd5d2a638d (patch) | |
tree | d02eb34f9105e496e53d5d8908d328f176161c2b | |
parent | 100035bf8677a57371cb9850fad6faf16a2c0c47 (diff) | |
download | linux-afe6fcb9775882230cd29b529203eabd5d2a638d.tar.xz |
drm/tegra: dsi: Add missing check for of_find_device_by_node
Add check for the return value of of_find_device_by_node() and return
the error if it fails in order to avoid NULL pointer dereference.
Fixes: e94236cde4d5 ("drm/tegra: dsi: Add ganged mode support")
Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231024080738.825553-1-nichen@iscas.ac.cn
-rw-r--r-- | drivers/gpu/drm/tegra/dsi.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index fbfe92a816d4..e419b76e57d3 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1544,9 +1544,11 @@ static int tegra_dsi_ganged_probe(struct tegra_dsi *dsi) np = of_parse_phandle(dsi->dev->of_node, "nvidia,ganged-mode", 0); if (np) { struct platform_device *gangster = of_find_device_by_node(np); + of_node_put(np); + if (!gangster) + return -EPROBE_DEFER; dsi->slave = platform_get_drvdata(gangster); - of_node_put(np); if (!dsi->slave) { put_device(&gangster->dev); |