iio: gyro: fxas21002c: Make use of device properties
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 13 Apr 2022 13:15:13 +0000 (16:15 +0300)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Thu, 28 Apr 2022 18:22:55 +0000 (19:22 +0100)
Convert the module to be property provider agnostic and allow
it to be used on non-OF platforms.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Rui Miguel Silva <rmfrfs@gmail.com>
Link: https://lore.kernel.org/r/20220413131513.59258-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/gyro/fxas21002c_core.c

index 410e5e9..0923fd7 100644 (file)
@@ -7,9 +7,9 @@
 
 #include <linux/interrupt.h>
 #include <linux/module.h>
-#include <linux/of_irq.h>
 #include <linux/pm.h>
 #include <linux/pm_runtime.h>
+#include <linux/property.h>
 #include <linux/regmap.h>
 #include <linux/regulator/consumer.h>
 
@@ -822,7 +822,6 @@ static int fxas21002c_trigger_probe(struct fxas21002c_data *data)
 {
        struct device *dev = regmap_get_device(data->regmap);
        struct iio_dev *indio_dev = dev_get_drvdata(dev);
-       struct device_node *np = indio_dev->dev.of_node;
        unsigned long irq_trig;
        bool irq_open_drain;
        int irq1;
@@ -831,8 +830,7 @@ static int fxas21002c_trigger_probe(struct fxas21002c_data *data)
        if (!data->irq)
                return 0;
 
-       irq1 = of_irq_get_byname(np, "INT1");
-
+       irq1 = fwnode_irq_get_byname(dev_fwnode(dev), "INT1");
        if (irq1 == data->irq) {
                dev_info(dev, "using interrupt line INT1\n");
                ret = regmap_field_write(data->regmap_fields[F_INT_CFG_DRDY],
@@ -843,7 +841,7 @@ static int fxas21002c_trigger_probe(struct fxas21002c_data *data)
 
        dev_info(dev, "using interrupt line INT2\n");
 
-       irq_open_drain = of_property_read_bool(np, "drive-open-drain");
+       irq_open_drain = device_property_read_bool(dev, "drive-open-drain");
 
        data->dready_trig = devm_iio_trigger_alloc(dev, "%s-dev%d",
                                                   indio_dev->name,