Commit 322da390 authored by Jonathan Cameron's avatar Jonathan Cameron

iio:health:max30102: Drop of_match_ptr and use generic fw accessors

This enables use of the driver with ACPI PRP0001 and also removes
an antipattern that I am trying to clear out of IIO to avoid
it being copied into new drivers.
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
Acked-by: default avatarMatt Ranostay <matt.ranostay@konsulko.com>
Link: https://lore.kernel.org/r/20200910173242.621168-39-jic23@kernel.org
parent 4231f9d1
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#include <linux/irq.h> #include <linux/irq.h>
#include <linux/i2c.h> #include <linux/i2c.h>
#include <linux/mutex.h> #include <linux/mutex.h>
#include <linux/of.h> #include <linux/mod_devicetable.h>
#include <linux/regmap.h> #include <linux/regmap.h>
#include <linux/iio/iio.h> #include <linux/iio/iio.h>
#include <linux/iio/buffer.h> #include <linux/iio/buffer.h>
...@@ -323,11 +323,10 @@ static int max30102_get_current_idx(unsigned int val, int *reg) ...@@ -323,11 +323,10 @@ static int max30102_get_current_idx(unsigned int val, int *reg)
static int max30102_led_init(struct max30102_data *data) static int max30102_led_init(struct max30102_data *data)
{ {
struct device *dev = &data->client->dev; struct device *dev = &data->client->dev;
struct device_node *np = dev->of_node;
unsigned int val; unsigned int val;
int reg, ret; int reg, ret;
ret = of_property_read_u32(np, "maxim,red-led-current-microamp", &val); ret = device_property_read_u32(dev, "maxim,red-led-current-microamp", &val);
if (ret) { if (ret) {
dev_info(dev, "no red-led-current-microamp set\n"); dev_info(dev, "no red-led-current-microamp set\n");
...@@ -346,7 +345,7 @@ static int max30102_led_init(struct max30102_data *data) ...@@ -346,7 +345,7 @@ static int max30102_led_init(struct max30102_data *data)
return ret; return ret;
if (data->chip_id == max30105) { if (data->chip_id == max30105) {
ret = of_property_read_u32(np, ret = device_property_read_u32(dev,
"maxim,green-led-current-microamp", &val); "maxim,green-led-current-microamp", &val);
if (ret) { if (ret) {
dev_info(dev, "no green-led-current-microamp set\n"); dev_info(dev, "no green-led-current-microamp set\n");
...@@ -368,7 +367,7 @@ static int max30102_led_init(struct max30102_data *data) ...@@ -368,7 +367,7 @@ static int max30102_led_init(struct max30102_data *data)
return ret; return ret;
} }
ret = of_property_read_u32(np, "maxim,ir-led-current-microamp", &val); ret = device_property_read_u32(dev, "maxim,ir-led-current-microamp", &val);
if (ret) { if (ret) {
dev_info(dev, "no ir-led-current-microamp set\n"); dev_info(dev, "no ir-led-current-microamp set\n");
...@@ -624,7 +623,7 @@ MODULE_DEVICE_TABLE(of, max30102_dt_ids); ...@@ -624,7 +623,7 @@ MODULE_DEVICE_TABLE(of, max30102_dt_ids);
static struct i2c_driver max30102_driver = { static struct i2c_driver max30102_driver = {
.driver = { .driver = {
.name = MAX30102_DRV_NAME, .name = MAX30102_DRV_NAME,
.of_match_table = of_match_ptr(max30102_dt_ids), .of_match_table = max30102_dt_ids,
}, },
.probe = max30102_probe, .probe = max30102_probe,
.remove = max30102_remove, .remove = max30102_remove,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment