Merge tag 'pwm/for-6.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry...
[sfrench/cifs-2.6.git] / drivers / leds / rgb / leds-qcom-lpg.c
index 0dcc046a9a192d5513d67e226130ca5c04df3af9..67f48f2221094562e6678d65d4a5c002775ad6e6 100644 (file)
@@ -602,8 +602,8 @@ static void lpg_brightness_set(struct lpg_led *led, struct led_classdev *cdev,
                lpg_lut_sync(lpg, lut_mask);
 }
 
-static void lpg_brightness_single_set(struct led_classdev *cdev,
-                                     enum led_brightness value)
+static int lpg_brightness_single_set(struct led_classdev *cdev,
+                                    enum led_brightness value)
 {
        struct lpg_led *led = container_of(cdev, struct lpg_led, cdev);
        struct mc_subled info;
@@ -614,10 +614,12 @@ static void lpg_brightness_single_set(struct led_classdev *cdev,
        lpg_brightness_set(led, cdev, &info);
 
        mutex_unlock(&led->lpg->lock);
+
+       return 0;
 }
 
-static void lpg_brightness_mc_set(struct led_classdev *cdev,
-                                 enum led_brightness value)
+static int lpg_brightness_mc_set(struct led_classdev *cdev,
+                                enum led_brightness value)
 {
        struct led_classdev_mc *mc = lcdev_to_mccdev(cdev);
        struct lpg_led *led = container_of(mc, struct lpg_led, mcdev);
@@ -628,6 +630,8 @@ static void lpg_brightness_mc_set(struct led_classdev *cdev,
        lpg_brightness_set(led, cdev, mc->subled_info);
 
        mutex_unlock(&led->lpg->lock);
+
+       return 0;
 }
 
 static int lpg_blink_set(struct lpg_led *led,
@@ -1120,7 +1124,7 @@ static int lpg_add_led(struct lpg *lpg, struct device_node *np)
                led->mcdev.num_colors = num_channels;
 
                cdev = &led->mcdev.led_cdev;
-               cdev->brightness_set = lpg_brightness_mc_set;
+               cdev->brightness_set_blocking = lpg_brightness_mc_set;
                cdev->blink_set = lpg_blink_mc_set;
 
                /* Register pattern accessors only if we have a LUT block */
@@ -1134,7 +1138,7 @@ static int lpg_add_led(struct lpg *lpg, struct device_node *np)
                        return ret;
 
                cdev = &led->cdev;
-               cdev->brightness_set = lpg_brightness_single_set;
+               cdev->brightness_set_blocking = lpg_brightness_single_set;
                cdev->blink_set = lpg_blink_single_set;
 
                /* Register pattern accessors only if we have a LUT block */
@@ -1153,7 +1157,7 @@ static int lpg_add_led(struct lpg *lpg, struct device_node *np)
        else
                cdev->brightness = LED_OFF;
 
-       cdev->brightness_set(cdev, cdev->brightness);
+       cdev->brightness_set_blocking(cdev, cdev->brightness);
 
        init_data.fwnode = of_fwnode_handle(np);