gpiolib: Access device's fwnode via dev_fwnode()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 7 Mar 2023 18:25:55 +0000 (20:25 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Wed, 8 Mar 2023 10:50:07 +0000 (11:50 +0100)
GPIO device's fwnode should be accessed via dev_fwnode().
Make sure that gpiochip_setup_dev() follows that.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpiolib.c

index 700195a1faae49c011d3fd848d7fd8562c217cb8..b1aa13d1b7e37e14c84b26e7e0b893de2a383acc 100644 (file)
@@ -588,14 +588,15 @@ static void gpiodevice_release(struct device *dev)
 
 static int gpiochip_setup_dev(struct gpio_device *gdev)
 {
+       struct fwnode_handle *fwnode = dev_fwnode(&gdev->dev);
        int ret;
 
        /*
         * If fwnode doesn't belong to another device, it's safe to clear its
         * initialized flag.
         */
-       if (gdev->dev.fwnode && !gdev->dev.fwnode->dev)
-               fwnode_dev_initialized(gdev->dev.fwnode, false);
+       if (fwnode && !fwnode->dev)
+               fwnode_dev_initialized(fwnode, false);
 
        ret = gcdev_register(gdev, gpio_devt);
        if (ret)