Merge tag 'drm-msm-fixes-2021-02-25' of https://gitlab.freedesktop.org/drm/msm into...
[linux-2.6-microblaze.git] / drivers / gpio / gpiolib-of.c
index b4a7111..baf0153 100644 (file)
@@ -1039,3 +1039,14 @@ void of_gpiochip_remove(struct gpio_chip *chip)
 {
        of_node_put(chip->of_node);
 }
+
+void of_gpio_dev_init(struct gpio_chip *gc, struct gpio_device *gdev)
+{
+       /* If the gpiochip has an assigned OF node this takes precedence */
+       if (gc->of_node)
+               gdev->dev.of_node = gc->of_node;
+       else
+               gc->of_node = gdev->dev.of_node;
+       if (gdev->dev.of_node)
+               gdev->dev.fwnode = of_fwnode_handle(gdev->dev.of_node);
+}