Commit 5ff422a7 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Lee Jones

leds: an30259a: 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: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: default avatarLee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/20230103131256.33894-4-andriy.shevchenko@linux.intel.com
parent 156a5bb8
...@@ -55,10 +55,6 @@ ...@@ -55,10 +55,6 @@
#define AN30259A_NAME "an30259a" #define AN30259A_NAME "an30259a"
#define STATE_OFF 0
#define STATE_KEEP 1
#define STATE_ON 2
struct an30259a; struct an30259a;
struct an30259a_led { struct an30259a_led {
...@@ -66,7 +62,7 @@ struct an30259a_led { ...@@ -66,7 +62,7 @@ struct an30259a_led {
struct fwnode_handle *fwnode; struct fwnode_handle *fwnode;
struct led_classdev cdev; struct led_classdev cdev;
u32 num; u32 num;
u32 default_state; enum led_default_state default_state;
bool sloping; bool sloping;
}; };
...@@ -205,7 +201,6 @@ static int an30259a_dt_init(struct i2c_client *client, ...@@ -205,7 +201,6 @@ static int an30259a_dt_init(struct i2c_client *client,
struct device_node *np = dev_of_node(&client->dev), *child; struct device_node *np = dev_of_node(&client->dev), *child;
int count, ret; int count, ret;
int i = 0; int i = 0;
const char *str;
struct an30259a_led *led; struct an30259a_led *led;
count = of_get_available_child_count(np); count = of_get_available_child_count(np);
...@@ -228,15 +223,7 @@ static int an30259a_dt_init(struct i2c_client *client, ...@@ -228,15 +223,7 @@ static int an30259a_dt_init(struct i2c_client *client,
led->num = source; led->num = source;
led->chip = chip; led->chip = chip;
led->fwnode = of_fwnode_handle(child); led->fwnode = of_fwnode_handle(child);
led->default_state = led_init_default_state_get(led->fwnode);
if (!of_property_read_string(child, "default-state", &str)) {
if (!strcmp(str, "on"))
led->default_state = STATE_ON;
else if (!strcmp(str, "keep"))
led->default_state = STATE_KEEP;
else
led->default_state = STATE_OFF;
}
i++; i++;
} }
...@@ -261,10 +248,10 @@ static void an30259a_init_default_state(struct an30259a_led *led) ...@@ -261,10 +248,10 @@ static void an30259a_init_default_state(struct an30259a_led *led)
int led_on, err; int led_on, err;
switch (led->default_state) { switch (led->default_state) {
case STATE_ON: case LEDS_DEFSTATE_ON:
led->cdev.brightness = LED_FULL; led->cdev.brightness = LED_FULL;
break; break;
case STATE_KEEP: case LEDS_DEFSTATE_KEEP:
err = regmap_read(chip->regmap, AN30259A_REG_LED_ON, &led_on); err = regmap_read(chip->regmap, AN30259A_REG_LED_ON, &led_on);
if (err) if (err)
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment