Merge tag 'upstream-4.5-rc1' of git://git.infradead.org/linux-ubifs
[deliverable/linux.git] / drivers / leds / leds-lp5521.c
index 63a92542c8cb0953d17d5dcd8502075348dad9cf..549b315ca8fe820932816d6c84e3d705bd876c99 100644 (file)
@@ -362,16 +362,17 @@ static int lp5521_run_selftest(struct lp55xx_chip *chip, char *buf)
        return 0;
 }
 
-static void lp5521_led_brightness_work(struct work_struct *work)
+static int lp5521_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, LP5521_REG_LED_PWM_BASE + led->chan_nr,
+       ret = lp55xx_write(chip, LP5521_REG_LED_PWM_BASE + led->chan_nr,
                led->brightness);
        mutex_unlock(&chip->lock);
+
+       return ret;
 }
 
 static ssize_t show_engine_mode(struct device *dev,
@@ -501,7 +502,7 @@ static struct lp55xx_device_config lp5521_cfg = {
        },
        .max_channel  = LP5521_MAX_LEDS,
        .post_init_device   = lp5521_post_init_device,
-       .brightness_work_fn = lp5521_led_brightness_work,
+       .brightness_fn      = lp5521_led_brightness,
        .set_led_current    = lp5521_set_led_current,
        .firmware_cb        = lp5521_firmware_loaded,
        .run_engine         = lp5521_run_engine,
This page took 0.028563 seconds and 5 git commands to generate.