kernel: 5.4: backport led register fix
authorSungbo Eo <mans0n@gorani.run>
Sun, 8 Mar 2020 17:35:29 +0000 (02:35 +0900)
committerPetr Štetiar <ynezz@true.cz>
Sun, 8 Mar 2020 23:53:50 +0000 (00:53 +0100)
Fixes issues with loading trigger-sources for usbport trigger from DTS.

Signed-off-by: Sungbo Eo <mans0n@gorani.run>
target/linux/generic/backport-5.4/801-v5.6-leds-populate-the-device-s-of_node.patch [new file with mode: 0644]

diff --git a/target/linux/generic/backport-5.4/801-v5.6-leds-populate-the-device-s-of_node.patch b/target/linux/generic/backport-5.4/801-v5.6-leds-populate-the-device-s-of_node.patch
new file mode 100644 (file)
index 0000000..4136bc4
--- /dev/null
@@ -0,0 +1,36 @@
+From 7a349e8c535d7327bf80710323c725df47149b8d Mon Sep 17 00:00:00 2001
+From: Jean-Jacques Hiblot <jjhiblot@ti.com>
+Date: Sun, 5 Jan 2020 23:31:14 +0100
+Subject: [PATCH] leds: populate the device's of_node
+
+If initialization data is available and its fwnode is actually a
+of_node, store this information in the led device's structure. This
+will allow the device to use or provide OF-based API such (devm_xxx).
+
+Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
+Signed-off-by: Pavel Machek <pavel@ucw.cz>
+[backport to 5.4]
+---
+
+--- a/drivers/leds/led-class.c
++++ b/drivers/leds/led-class.c
+@@ -19,6 +19,7 @@
+ #include <linux/spinlock.h>
+ #include <linux/timer.h>
+ #include <uapi/linux/uleds.h>
++#include <linux/of.h>
+ #include "leds.h"
+ static struct class *leds_class;
+@@ -276,8 +277,10 @@ int led_classdev_register_ext(struct dev
+               mutex_unlock(&led_cdev->led_access);
+               return PTR_ERR(led_cdev->dev);
+       }
+-      if (init_data && init_data->fwnode)
++      if (init_data && init_data->fwnode) {
+               led_cdev->dev->fwnode = init_data->fwnode;
++              led_cdev->dev->of_node = to_of_node(init_data->fwnode);
++      }
+       if (ret)
+               dev_warn(parent, "Led %s renamed to %s due to name collision",