iio: adc: rtq6056: add i2c_device_id support

Add i2c_device_id table to support legacy I2C instantiation.
Update probe to use i2c_get_match_data() so device data can be
retrieved consistently for both OF and legacy I2C instantiation.

Signed-off-by: Kevin Tung <kevin.tung.openbmc@gmail.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
This commit is contained in:
Kevin Tung 2026-04-20 20:52:52 +08:00 committed by Jonathan Cameron
parent d01d624c28
commit ce80292ead

View File

@ -728,7 +728,7 @@ static int rtq6056_probe(struct i2c_client *i2c)
if (!i2c_check_functionality(i2c->adapter, I2C_FUNC_SMBUS_WORD_DATA))
return -EOPNOTSUPP;
devdata = device_get_match_data(dev);
devdata = i2c_get_match_data(i2c);
if (!devdata)
return dev_err_probe(dev, -EINVAL, "Invalid dev data\n");
@ -871,6 +871,13 @@ static const struct richtek_dev_data rtq6059_devdata = {
.set_average = rtq6059_adc_set_average,
};
static const struct i2c_device_id rtq6056_id[] = {
{ "rtq6056", (kernel_ulong_t)&rtq6056_devdata },
{ "rtq6059", (kernel_ulong_t)&rtq6059_devdata },
{ }
};
MODULE_DEVICE_TABLE(i2c, rtq6056_id);
static const struct of_device_id rtq6056_device_match[] = {
{ .compatible = "richtek,rtq6056", .data = &rtq6056_devdata },
{ .compatible = "richtek,rtq6059", .data = &rtq6059_devdata },
@ -885,6 +892,7 @@ static struct i2c_driver rtq6056_driver = {
.pm = pm_ptr(&rtq6056_pm_ops),
},
.probe = rtq6056_probe,
.id_table = rtq6056_id,
};
module_i2c_driver(rtq6056_driver);