[PATCH] usb: typec: stusb160x: add missing NULL check for i2c_get_match_data()
Joshua Crofts <[email protected]> Thu, 6 Aug 2026 08:43:01 +0000
| Newsgroups | org.kernel.vger.linux-usb,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
In stusb160x_probe(), the return value of i2c_get_match_data() is not checked, causing a null pointer dereference later on if the device was registered manually (without devicetree or ACPI). Fix this by adding a NULL check for the return value of i2c_get_match_data(). Reported-by: [email protected] Closes: https://syzkaller.appspot.com/bug?extid=6c7e68b141ebd3a2cadf Fixes: 823754697556 ("usb: typec: stusb160x: Make use of i2c_get_match_data()") Signed-off-by: Joshua Crofts <[email protected]> --- drivers/usb/typec/stusb160x.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/usb/typec/stusb160x.c b/drivers/usb/typec/stusb160x.c index 6d85b25b40bc..8f3435c669cd 100644 --- a/drivers/usb/typec/stusb160x.c +++ b/drivers/usb/typec/stusb160x.c @@ -645,6 +645,8 @@ static int stusb160x_probe(struct i2c_client *client) i2c_set_clientdata(client, chip); regmap_config = i2c_get_match_data(client); + if (!regmap_config) + return -ENODEV; chip->regmap = devm_regmap_init_i2c(client, regmap_config); if (IS_ERR(chip->regmap)) { -- 2.47.3