summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVal Packett <val@packett.cool>2025-09-20 14:03:44 +0200
committerHans Verkuil <hverkuil+cisco@kernel.org>2025-10-29 13:47:16 +0100
commita6119d1e70d5d8edfab81dbac9e5bc648e28c93c (patch)
tree09bc6e5a2decd8523a9f51e0ce21a120f1c869c7
parentaf14ba3622b031752e1b4b68421d8cfde01e929e (diff)
media: i2c: dw9719: Add driver_data matching
In preparation for adding models with different register sets, start assigning the model based on the i2c match data. Signed-off-by: Val Packett <val@packett.cool> Signed-off-by: André Apitzsch <git@apitzsch.eu> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
-rw-r--r--drivers/media/i2c/dw9719.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/media/i2c/dw9719.c b/drivers/media/i2c/dw9719.c
index d2af2c6fcd67..5dc4126909b7 100644
--- a/drivers/media/i2c/dw9719.c
+++ b/drivers/media/i2c/dw9719.c
@@ -282,6 +282,8 @@ static int dw9719_probe(struct i2c_client *client)
if (!dw9719)
return -ENOMEM;
+ dw9719->model = (enum dw9719_model)(uintptr_t)i2c_get_match_data(client);
+
dw9719->regmap = devm_cci_regmap_init_i2c(client, 8);
if (IS_ERR(dw9719->regmap))
return PTR_ERR(dw9719->regmap);
@@ -361,8 +363,8 @@ static void dw9719_remove(struct i2c_client *client)
}
static const struct of_device_id dw9719_of_table[] = {
- { .compatible = "dongwoon,dw9719" },
- { .compatible = "dongwoon,dw9761" },
+ { .compatible = "dongwoon,dw9719", .data = (const void *)DW9719 },
+ { .compatible = "dongwoon,dw9761", .data = (const void *)DW9761 },
{ }
};
MODULE_DEVICE_TABLE(of, dw9719_of_table);