of_match_device could return NULL, and so cause a NULL pointer
dereference later.

Signed-off-by: Shailendra Verma <shailendr...@samsung.com>
---
 drivers/input/keyboard/tegra-kbc.c |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/input/keyboard/tegra-kbc.c 
b/drivers/input/keyboard/tegra-kbc.c
index 0c07e10..1f213ba 100644
--- a/drivers/input/keyboard/tegra-kbc.c
+++ b/drivers/input/keyboard/tegra-kbc.c
@@ -617,6 +617,11 @@ static int tegra_kbc_probe(struct platform_device *pdev)
        const struct of_device_id *match;
 
        match = of_match_device(tegra_kbc_of_match, &pdev->dev);
+
+       if (!match) {
+               dev_err(&pdev->dev, "Error: No device match found\n");
+               return -ENODEV;
+       }
 
        kbc = devm_kzalloc(&pdev->dev, sizeof(*kbc), GFP_KERNEL);
        if (!kbc) {
-- 
1.7.9.5

Reply via email to