Merge tag 'iio-fixes-for-5.19a' of https://git.kernel.org/pub/scm/linux/kernel/git...
[platform/kernel/linux-rpi.git] / drivers / iio / gyro / mpu3050-core.c
index f4c2f4c..5908a96 100644 (file)
@@ -26,6 +26,7 @@
 #include <linux/interrupt.h>
 #include <linux/module.h>
 #include <linux/pm_runtime.h>
+#include <linux/property.h>
 #include <linux/random.h>
 #include <linux/slab.h>
 
@@ -1051,6 +1052,7 @@ static const struct iio_trigger_ops mpu3050_trigger_ops = {
 static int mpu3050_trigger_probe(struct iio_dev *indio_dev, int irq)
 {
        struct mpu3050 *mpu3050 = iio_priv(indio_dev);
+       struct device *dev = mpu3050->dev;
        unsigned long irq_trig;
        int ret;
 
@@ -1062,8 +1064,7 @@ static int mpu3050_trigger_probe(struct iio_dev *indio_dev, int irq)
                return -ENOMEM;
 
        /* Check if IRQ is open drain */
-       if (of_property_read_bool(mpu3050->dev->of_node, "drive-open-drain"))
-               mpu3050->irq_opendrain = true;
+       mpu3050->irq_opendrain = device_property_read_bool(dev, "drive-open-drain");
 
        irq_trig = irqd_get_trigger_type(irq_get_irq_data(irq));
        /*
@@ -1119,13 +1120,12 @@ static int mpu3050_trigger_probe(struct iio_dev *indio_dev, int irq)
                                   mpu3050->trig->name,
                                   mpu3050->trig);
        if (ret) {
-               dev_err(mpu3050->dev,
-                       "can't get IRQ %d, error %d\n", irq, ret);
+               dev_err(dev, "can't get IRQ %d, error %d\n", irq, ret);
                return ret;
        }
 
        mpu3050->irq = irq;
-       mpu3050->trig->dev.parent = mpu3050->dev;
+       mpu3050->trig->dev.parent = dev;
        mpu3050->trig->ops = &mpu3050_trigger_ops;
        iio_trigger_set_drvdata(mpu3050->trig, indio_dev);
 
@@ -1264,7 +1264,7 @@ err_power_down:
 }
 EXPORT_SYMBOL(mpu3050_common_probe);
 
-int mpu3050_common_remove(struct device *dev)
+void mpu3050_common_remove(struct device *dev)
 {
        struct iio_dev *indio_dev = dev_get_drvdata(dev);
        struct mpu3050 *mpu3050 = iio_priv(indio_dev);
@@ -1277,8 +1277,6 @@ int mpu3050_common_remove(struct device *dev)
                free_irq(mpu3050->irq, mpu3050);
        iio_device_unregister(indio_dev);
        mpu3050_power_down(mpu3050);
-
-       return 0;
 }
 EXPORT_SYMBOL(mpu3050_common_remove);