Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

leds: gpio: use OF variant of LED registering function

In leds-gpio we support LEDs specified in DT so we should use
(devm_)of_led_classdev_register. This allows passing DT node as argument
for use by the LED subsystem.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>

authored by

Rafał Miłecki and committed by
Jacek Anaszewski
7ea79ae8 442c6098

+6 -6
+6 -6
drivers/leds/leds-gpio.c
··· 77 77 78 78 static int create_gpio_led(const struct gpio_led *template, 79 79 struct gpio_led_data *led_dat, struct device *parent, 80 - gpio_blink_set_t blink_set) 80 + struct device_node *np, gpio_blink_set_t blink_set) 81 81 { 82 82 int ret, state; 83 83 ··· 139 139 if (ret < 0) 140 140 return ret; 141 141 142 - return devm_led_classdev_register(parent, &led_dat->cdev); 142 + return devm_of_led_classdev_register(parent, np, &led_dat->cdev); 143 143 } 144 144 145 145 struct gpio_leds_priv { ··· 208 208 if (fwnode_property_present(child, "panic-indicator")) 209 209 led.panic_indicator = 1; 210 210 211 - ret = create_gpio_led(&led, led_dat, dev, NULL); 211 + ret = create_gpio_led(&led, led_dat, dev, np, NULL); 212 212 if (ret < 0) { 213 213 fwnode_handle_put(child); 214 214 return ERR_PTR(ret); ··· 242 242 243 243 priv->num_leds = pdata->num_leds; 244 244 for (i = 0; i < priv->num_leds; i++) { 245 - ret = create_gpio_led(&pdata->leds[i], 246 - &priv->leds[i], 247 - &pdev->dev, pdata->gpio_blink_set); 245 + ret = create_gpio_led(&pdata->leds[i], &priv->leds[i], 246 + &pdev->dev, NULL, 247 + pdata->gpio_blink_set); 248 248 if (ret < 0) 249 249 return ret; 250 250 }