diff options
Diffstat (limited to 'drivers/leds')
-rw-r--r-- | drivers/leds/leds-88pm860x.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/leds/leds-88pm860x.c b/drivers/leds/leds-88pm860x.c index 6be2edd41173..f5b9ea315790 100644 --- a/drivers/leds/leds-88pm860x.c +++ b/drivers/leds/leds-88pm860x.c | |||
@@ -128,8 +128,10 @@ static void pm860x_led_set(struct led_classdev *cdev, | |||
128 | static int pm860x_led_dt_init(struct platform_device *pdev, | 128 | static int pm860x_led_dt_init(struct platform_device *pdev, |
129 | struct pm860x_led *data) | 129 | struct pm860x_led *data) |
130 | { | 130 | { |
131 | struct device_node *nproot = pdev->dev.parent->of_node, *np; | 131 | struct device_node *nproot, *np; |
132 | int iset = 0; | 132 | int iset = 0; |
133 | |||
134 | nproot = of_node_get(pdev->dev.parent->of_node); | ||
133 | if (!nproot) | 135 | if (!nproot) |
134 | return -ENODEV; | 136 | return -ENODEV; |
135 | nproot = of_find_node_by_name(nproot, "leds"); | 137 | nproot = of_find_node_by_name(nproot, "leds"); |
@@ -145,6 +147,7 @@ static int pm860x_led_dt_init(struct platform_device *pdev, | |||
145 | break; | 147 | break; |
146 | } | 148 | } |
147 | } | 149 | } |
150 | of_node_put(nproot); | ||
148 | return 0; | 151 | return 0; |
149 | } | 152 | } |
150 | #else | 153 | #else |