On Thu Mar 26 15:15:23 2026 +0200, Sakari Ailus wrote:
> The I²C device id table is necessary as the device may be, besides through
> system firmware, also instantiated in the IPU bridge so matching takes
> place using the I²C device id table. Add back the table, with ids for all
> supported devices.
>
> Reported-by: Michael Anthony <[email protected]>
> Closes:
> https://lore.kernel.org/linux-media/ambp190mb2678e7dc048409068260dce8ed...@ambp190mb2678.eurp190.prod.outlook.com/
> Fixes: 15faf0fa1472 ("media: i2c: dw9719: Remove unused i2c device id table")
> Cc: [email protected] # for v6.19 and later
> Signed-off-by: Sakari Ailus <[email protected]>
Patch committed.
Thanks,
Sakari Ailus
drivers/media/i2c/dw9719.c | 10 ++++++++++
1 file changed, 10 insertions(+)
---
diff --git a/drivers/media/i2c/dw9719.c b/drivers/media/i2c/dw9719.c
index 59558335989e..3b7ba88fd67c 100644
--- a/drivers/media/i2c/dw9719.c
+++ b/drivers/media/i2c/dw9719.c
@@ -439,6 +439,15 @@ static void dw9719_remove(struct i2c_client *client)
pm_runtime_set_suspended(&client->dev);
}
+static const struct i2c_device_id dw9719_id_table[] = {
+ { .name = "dw9718s", .driver_data = (kernel_ulong_t)DW9718S },
+ { .name = "dw9719", .driver_data = (kernel_ulong_t)DW9719 },
+ { .name = "dw9761", .driver_data = (kernel_ulong_t)DW9761 },
+ { .name = "dw9800k", .driver_data = (kernel_ulong_t)DW9800K },
+ { }
+};
+MODULE_DEVICE_TABLE(i2c, dw9719_id_table);
+
static const struct of_device_id dw9719_of_table[] = {
{ .compatible = "dongwoon,dw9718s", .data = (const void *)DW9718S },
{ .compatible = "dongwoon,dw9719", .data = (const void *)DW9719 },
@@ -459,6 +468,7 @@ static struct i2c_driver dw9719_i2c_driver = {
},
.probe = dw9719_probe,
.remove = dw9719_remove,
+ .id_table = dw9719_id_table,
};
module_i2c_driver(dw9719_i2c_driver);
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]