diff options
author | Andrew Lunn <andrew@lunn.ch> | 2015-08-20 12:22:57 +0200 |
---|---|---|
committer | Jacek Anaszewski <j.anaszewski@samsung.com> | 2016-01-04 09:57:33 +0100 |
commit | 95b2af637e283e3d549c8a6af9f182b0bd972a2e (patch) | |
tree | ab1d6e73c0a060faa36dda71b66ab0b9cd829e8e /drivers/leds/leds-lp5523.c | |
parent | 525d6a65a2abe279889b019e2663b8a11bc4f90b (diff) |
leds: lp55xx: Remove work queue
Now the core implements the work queue, remove it from the drivers,
and switch to using brightness_set_blocking op.
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
Cc: Milo Kim <milo.kim@ti.com>
Diffstat (limited to 'drivers/leds/leds-lp5523.c')
-rw-r--r-- | drivers/leds/leds-lp5523.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/leds/leds-lp5523.c b/drivers/leds/leds-lp5523.c index 1d0187f42941..c5b30f06218a 100644 --- a/drivers/leds/leds-lp5523.c +++ b/drivers/leds/leds-lp5523.c @@ -802,16 +802,16 @@ leave: return ret; } -static void lp5523_led_brightness_work(struct work_struct *work) +static int lp5523_led_brightness(struct lp55xx_led *led) { - struct lp55xx_led *led = container_of(work, struct lp55xx_led, - brightness_work); struct lp55xx_chip *chip = led->chip; + int ret; mutex_lock(&chip->lock); - lp55xx_write(chip, LP5523_REG_LED_PWM_BASE + led->chan_nr, + ret = lp55xx_write(chip, LP5523_REG_LED_PWM_BASE + led->chan_nr, led->brightness); mutex_unlock(&chip->lock); + return ret; } static LP55XX_DEV_ATTR_RW(engine1_mode, show_engine1_mode, store_engine1_mode); @@ -867,7 +867,7 @@ static struct lp55xx_device_config lp5523_cfg = { }, .max_channel = LP5523_MAX_LEDS, .post_init_device = lp5523_post_init_device, - .brightness_work_fn = lp5523_led_brightness_work, + .brightness_fn = lp5523_led_brightness, .set_led_current = lp5523_set_led_current, .firmware_cb = lp5523_firmware_loaded, .run_engine = lp5523_run_engine, |