On Sun, Oct 18, 2020 at 5:03 PM Jonathan Cameron <jic23@xxxxxxxxxx> wrote: > > On Sun, 18 Oct 2020 09:01:42 +0530 > Vaishnav M A <vaishnav@xxxxxxxxxxxxxxx> wrote: > > > add i2c_device_id for the vl53l0x-i2c driver so > > that the device can be instantiated using i2c_new_client_device > > or from userspace, useful in cases where device tree based description > > is not possible now(Eg. a device on a gbphy i2c > > adapter created by greybus). > > > > Signed-off-by: Vaishnav M A <vaishnav@xxxxxxxxxxxxxxx> > > Please fix the description as mentioned in other patches. > Thank you Jonathan for your review, I have sent a v3 patch with fixed description : https://lore.kernel.org/patchwork/patch/1322196/ understand your concern about the redundant device_id(s), it will be nice to see of_match_table reused in such cases as you suggested. > The code change is fine, but it does raise the question of whether we want to think > about providing a means to register such devices using the of_match_table. > It's somewhat irritating to need to provide both (I'd rather not > just provide the non-dt version rely on the old hack that drops the > vendor ID for matching). > > +CC Wolfram. > > > --- > > v2: > > - fix commit message > > drivers/iio/proximity/vl53l0x-i2c.c | 7 +++++++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/drivers/iio/proximity/vl53l0x-i2c.c b/drivers/iio/proximity/vl53l0x-i2c.c > > index 5fbda9475ba9..7c29d4cae24a 100644 > > --- a/drivers/iio/proximity/vl53l0x-i2c.c > > +++ b/drivers/iio/proximity/vl53l0x-i2c.c > > @@ -143,6 +143,12 @@ static int vl53l0x_probe(struct i2c_client *client) > > return devm_iio_device_register(&client->dev, indio_dev); > > } > > > > +static const struct i2c_device_id vl53l0x_id[] = { > > + { "vl53l0x", 0}, > > + { } > > +}; > > +MODULE_DEVICE_TABLE(i2c, vl53l0x_id); > > + > > static const struct of_device_id st_vl53l0x_dt_match[] = { > > { .compatible = "st,vl53l0x", }, > > { } > > @@ -155,6 +161,7 @@ static struct i2c_driver vl53l0x_driver = { > > .of_match_table = st_vl53l0x_dt_match, > > }, > > .probe_new = vl53l0x_probe, > > + .id_table = vl53l0x_id, > > }; > > module_i2c_driver(vl53l0x_driver); > > >