[PATCH] usb: typec: stusb160x: add missing NULL check for i2c_get_match_data()

From: Joshua Crofts

Date: Thu Aug 06 2026 - 04:47:16 EST


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: syzbot+6c7e68b141ebd3a2cadf@xxxxxxxxxxxxxxxxxxxxxxxxx
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 <joshua.crofts1@xxxxxxxxx>
---
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