[PATCH v1 1/6] pwm: tegra: Check for match_data being NULL
Uwe Kleine-König <[email protected]> Tue, 14 Jul 2026 14:02:35 +0200
| Newsgroups | org.kernel.vger.linux-pwm,org.kernel.vger.linux-tegra |
|---|---|
| Message-ID | <c7d4a3ee8c615f5f6f468c0040fdb0e8864152ba.1784030076.git.ukleinek@kernel.org> |
It's unlikely but not impossible that of_device_get_match_data() returns NULL. Handle this case instead of triggering a NULL pointer exception. Signed-off-by: Uwe Kleine-König <[email protected]> --- drivers/pwm/pwm-tegra.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/pwm/pwm-tegra.c b/drivers/pwm/pwm-tegra.c index 5cdbe120ba2d..53743f83869a 100644 --- a/drivers/pwm/pwm-tegra.c +++ b/drivers/pwm/pwm-tegra.c @@ -322,6 +322,13 @@ static int tegra_pwm_probe(struct platform_device *pdev) int ret; soc = of_device_get_match_data(&pdev->dev); + if (!soc) + /* + * This can only happen if pdev was matched via pdev->name + * (which should not happen today) or in combination with a + * driver override. + */ + return dev_err_probe(dev, -ENODEV, "Unsupported device\n"); chip = devm_pwmchip_alloc(&pdev->dev, soc->num_channels, sizeof(*pc)); if (IS_ERR(chip)) -- 2.55.0.11.g153666a7d9bb