From 6d4080d2bb4c2cfada3881c6d89ecb2d72b60a39 Mon Sep 17 00:00:00 2001 From: Prateek Patel Date: Tue, 10 May 2022 04:40:15 +0000 Subject: [PATCH] drivers: cec: fix cert_c defect Add a sanity check on cec->soc, which could be NULL. CID 490328 Bug 3512545 Change-Id: Ibd334c5637a85342ed5307eecb697416f32e0360 Signed-off-by: Prateek Patel Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvidia/+/2710156 Reviewed-by: svc-mobile-coverity Reviewed-by: svc-mobile-cert Reviewed-by: svcacv Reviewed-by: svc_kernel_abi Reviewed-by: Sachin Nikam GVS: Gerrit_Virtual_Submit --- drivers/misc/tegra-cec/tegra_cec.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/misc/tegra-cec/tegra_cec.c b/drivers/misc/tegra-cec/tegra_cec.c index 3f570448..bc027a8a 100644 --- a/drivers/misc/tegra-cec/tegra_cec.c +++ b/drivers/misc/tegra-cec/tegra_cec.c @@ -747,6 +747,12 @@ static int tegra_cec_probe(struct platform_device *pdev) return -ENOMEM; cec->soc = of_device_get_match_data(&pdev->dev); + if (cec->soc == NULL) { + dev_err(&pdev->dev, "No cec dev table found\n"); + devm_kfree(&pdev->dev, cec); + return -ENODEV; + } + if (cec->soc->cec_always_on && reset_retry_count != 0) { rst = devm_reset_control_get(&pdev->dev, "cec"); if (IS_ERR(rst)) {