mirror of
https://github.com/torvalds/linux.git
synced 2024-12-28 05:41:55 +00:00
leds: mt6323: Get rid of custom led_init_default_state_get()
LED core provides a helper to parse default state from firmware node. Use it instead of custom implementation. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Signed-off-by: Lee Jones <lee@kernel.org> Link: https://lore.kernel.org/r/20230103131256.33894-7-andriy.shevchenko@linux.intel.com
This commit is contained in:
parent
e41ff81767
commit
99cade8347
@ -339,23 +339,23 @@ static int mt6323_led_set_dt_default(struct led_classdev *cdev,
|
||||
struct device_node *np)
|
||||
{
|
||||
struct mt6323_led *led = container_of(cdev, struct mt6323_led, cdev);
|
||||
const char *state;
|
||||
enum led_default_state state;
|
||||
int ret = 0;
|
||||
|
||||
state = of_get_property(np, "default-state", NULL);
|
||||
if (state) {
|
||||
if (!strcmp(state, "keep")) {
|
||||
ret = mt6323_get_led_hw_brightness(cdev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
led->current_brightness = ret;
|
||||
ret = 0;
|
||||
} else if (!strcmp(state, "on")) {
|
||||
ret =
|
||||
mt6323_led_set_brightness(cdev, cdev->max_brightness);
|
||||
} else {
|
||||
ret = mt6323_led_set_brightness(cdev, LED_OFF);
|
||||
}
|
||||
state = led_init_default_state_get(of_fwnode_handle(np));
|
||||
switch (state) {
|
||||
case LEDS_DEFSTATE_ON:
|
||||
ret = mt6323_led_set_brightness(cdev, cdev->max_brightness);
|
||||
break;
|
||||
case LEDS_DEFSTATE_KEEP:
|
||||
ret = mt6323_get_led_hw_brightness(cdev);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
led->current_brightness = ret;
|
||||
ret = 0;
|
||||
break;
|
||||
default:
|
||||
ret = mt6323_led_set_brightness(cdev, LED_OFF);
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user