forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
kernel/drivers/iio/health/max30100.c
....@@ -16,7 +16,7 @@
1616 #include <linux/irq.h>
1717 #include <linux/i2c.h>
1818 #include <linux/mutex.h>
19
-#include <linux/of.h>
19
+#include <linux/property.h>
2020 #include <linux/regmap.h>
2121 #include <linux/iio/iio.h>
2222 #include <linux/iio/buffer.h>
....@@ -267,11 +267,10 @@
267267 static int max30100_led_init(struct max30100_data *data)
268268 {
269269 struct device *dev = &data->client->dev;
270
- struct device_node *np = dev->of_node;
271270 unsigned int val[2];
272271 int reg, ret;
273272
274
- ret = of_property_read_u32_array(np, "maxim,led-current-microamp",
273
+ ret = device_property_read_u32_array(dev, "maxim,led-current-microamp",
275274 (unsigned int *) &val, 2);
276275 if (ret) {
277276 /* Default to 24 mA RED LED, 50 mA IR LED */
....@@ -440,7 +439,6 @@
440439 indio_dev->available_scan_masks = max30100_scan_masks;
441440 indio_dev->modes = (INDIO_BUFFER_SOFTWARE | INDIO_DIRECT_MODE);
442441 indio_dev->setup_ops = &max30100_buffer_setup_ops;
443
- indio_dev->dev.parent = &client->dev;
444442
445443 data = iio_priv(indio_dev);
446444 data->indio_dev = indio_dev;
....@@ -502,7 +500,7 @@
502500 static struct i2c_driver max30100_driver = {
503501 .driver = {
504502 .name = MAX30100_DRV_NAME,
505
- .of_match_table = of_match_ptr(max30100_dt_ids),
503
+ .of_match_table = max30100_dt_ids,
506504 },
507505 .probe = max30100_probe,
508506 .remove = max30100_remove,