diff options
| -rw-r--r-- | drivers/leds/leds-lp5523.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/drivers/leds/leds-lp5523.c b/drivers/leds/leds-lp5523.c index 2fd5689f65c0..a14495402cc5 100644 --- a/drivers/leds/leds-lp5523.c +++ b/drivers/leds/leds-lp5523.c | |||
| @@ -150,7 +150,7 @@ static inline struct lp5523_chip *led_to_lp5523(struct lp5523_led *led) | |||
| 150 | leds[led->id]); | 150 | leds[led->id]); |
| 151 | } | 151 | } |
| 152 | 152 | ||
| 153 | static int lp5523_set_mode(struct lp5523_engine *engine, u8 mode); | 153 | static void lp5523_set_mode(struct lp5523_engine *engine, u8 mode); |
| 154 | static int lp5523_set_engine_mode(struct lp5523_engine *engine, u8 mode); | 154 | static int lp5523_set_engine_mode(struct lp5523_engine *engine, u8 mode); |
| 155 | static int lp5523_load_program(struct lp5523_engine *engine, const u8 *pattern); | 155 | static int lp5523_load_program(struct lp5523_engine *engine, const u8 *pattern); |
| 156 | 156 | ||
| @@ -789,26 +789,28 @@ static void lp5523_unregister_sysfs(struct i2c_client *client) | |||
| 789 | /*--------------------------------------------------------------*/ | 789 | /*--------------------------------------------------------------*/ |
| 790 | /* Set chip operating mode */ | 790 | /* Set chip operating mode */ |
| 791 | /*--------------------------------------------------------------*/ | 791 | /*--------------------------------------------------------------*/ |
| 792 | static int lp5523_set_mode(struct lp5523_engine *engine, u8 mode) | 792 | static void lp5523_set_mode(struct lp5523_engine *engine, u8 mode) |
| 793 | { | 793 | { |
| 794 | int ret = 0; | ||
| 795 | |||
| 796 | /* if in that mode already do nothing, except for run */ | 794 | /* if in that mode already do nothing, except for run */ |
| 797 | if (mode == engine->mode && mode != LP5523_CMD_RUN) | 795 | if (mode == engine->mode && mode != LP5523_CMD_RUN) |
| 798 | return 0; | 796 | return; |
| 799 | 797 | ||
| 800 | if (mode == LP5523_CMD_RUN) { | 798 | switch (mode) { |
| 801 | ret = lp5523_run_program(engine); | 799 | case LP5523_CMD_RUN: |
| 802 | } else if (mode == LP5523_CMD_LOAD) { | 800 | lp5523_run_program(engine); |
| 801 | break; | ||
| 802 | case LP5523_CMD_LOAD: | ||
| 803 | lp5523_set_engine_mode(engine, LP5523_CMD_DISABLED); | 803 | lp5523_set_engine_mode(engine, LP5523_CMD_DISABLED); |
| 804 | lp5523_set_engine_mode(engine, LP5523_CMD_LOAD); | 804 | lp5523_set_engine_mode(engine, LP5523_CMD_LOAD); |
| 805 | } else if (mode == LP5523_CMD_DISABLED) { | 805 | break; |
| 806 | case LP5523_CMD_DISABLED: | ||
| 806 | lp5523_set_engine_mode(engine, LP5523_CMD_DISABLED); | 807 | lp5523_set_engine_mode(engine, LP5523_CMD_DISABLED); |
| 808 | break; | ||
| 809 | default: | ||
| 810 | return; | ||
| 807 | } | 811 | } |
| 808 | 812 | ||
| 809 | engine->mode = mode; | 813 | engine->mode = mode; |
| 810 | |||
| 811 | return ret; | ||
| 812 | } | 814 | } |
| 813 | 815 | ||
| 814 | /*--------------------------------------------------------------*/ | 816 | /*--------------------------------------------------------------*/ |
