hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/iio/chemical/vz89x.c
....@@ -10,8 +10,7 @@
1010 #include <linux/mutex.h>
1111 #include <linux/init.h>
1212 #include <linux/i2c.h>
13
-#include <linux/of.h>
14
-#include <linux/of_device.h>
13
+#include <linux/mod_devicetable.h>
1514
1615 #include <linux/iio/iio.h>
1716 #include <linux/iio/sysfs.h>
....@@ -352,12 +351,12 @@
352351 static int vz89x_probe(struct i2c_client *client,
353352 const struct i2c_device_id *id)
354353 {
354
+ struct device *dev = &client->dev;
355355 struct iio_dev *indio_dev;
356356 struct vz89x_data *data;
357
- const struct of_device_id *of_id;
358357 int chip_id;
359358
360
- indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*data));
359
+ indio_dev = devm_iio_device_alloc(dev, sizeof(*data));
361360 if (!indio_dev)
362361 return -ENOMEM;
363362 data = iio_priv(indio_dev);
....@@ -370,11 +369,10 @@
370369 else
371370 return -EOPNOTSUPP;
372371
373
- of_id = of_match_device(vz89x_dt_ids, &client->dev);
374
- if (!of_id)
372
+ if (!dev_fwnode(dev))
375373 chip_id = id->driver_data;
376374 else
377
- chip_id = (unsigned long)of_id->data;
375
+ chip_id = (unsigned long)device_get_match_data(dev);
378376
379377 i2c_set_clientdata(client, indio_dev);
380378 data->client = client;
....@@ -382,15 +380,14 @@
382380 data->last_update = jiffies - HZ;
383381 mutex_init(&data->lock);
384382
385
- indio_dev->dev.parent = &client->dev;
386383 indio_dev->info = &vz89x_info;
387
- indio_dev->name = dev_name(&client->dev);
384
+ indio_dev->name = dev_name(dev);
388385 indio_dev->modes = INDIO_DIRECT_MODE;
389386
390387 indio_dev->channels = data->chip->channels;
391388 indio_dev->num_channels = data->chip->num_channels;
392389
393
- return devm_iio_device_register(&client->dev, indio_dev);
390
+ return devm_iio_device_register(dev, indio_dev);
394391 }
395392
396393 static const struct i2c_device_id vz89x_id[] = {
....@@ -403,7 +400,7 @@
403400 static struct i2c_driver vz89x_driver = {
404401 .driver = {
405402 .name = "vz89x",
406
- .of_match_table = of_match_ptr(vz89x_dt_ids),
403
+ .of_match_table = vz89x_dt_ids,
407404 },
408405 .probe = vz89x_probe,
409406 .id_table = vz89x_id,