]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
leds: pwm: Remove atomic code paths
authorThierry Reding <thierry.reding@gmail.com>
Wed, 4 Jan 2017 08:37:56 +0000 (09:37 +0100)
committerThierry Reding <thierry.reding@gmail.com>
Wed, 4 Jan 2017 08:37:56 +0000 (09:37 +0100)
PWM devices have all been marked as "might sleep" since v4.5. It no
longer makes sense to keep the alternative code paths around because
it is effectively dead code.

Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
drivers/leds/leds-pwm.c

index a9145aa7f36a017327f9c7b74140ec5d1a730e40..8d456dc6c5bfecb68daab1b753754d062e862193 100644 (file)
@@ -29,7 +29,6 @@ struct led_pwm_data {
        unsigned int            active_low;
        unsigned int            period;
        int                     duty;
-       bool                    can_sleep;
 };
 
 struct led_pwm_priv {
@@ -49,8 +48,8 @@ static void __led_pwm_set(struct led_pwm_data *led_dat)
                pwm_enable(led_dat->pwm);
 }
 
-static void led_pwm_set(struct led_classdev *led_cdev,
-       enum led_brightness brightness)
+static int led_pwm_set(struct led_classdev *led_cdev,
+                      enum led_brightness brightness)
 {
        struct led_pwm_data *led_dat =
                container_of(led_cdev, struct led_pwm_data, cdev);
@@ -66,12 +65,7 @@ static void led_pwm_set(struct led_classdev *led_cdev,
        led_dat->duty = duty;
 
        __led_pwm_set(led_dat);
-}
 
-static int led_pwm_set_blocking(struct led_classdev *led_cdev,
-       enum led_brightness brightness)
-{
-       led_pwm_set(led_cdev, brightness);
        return 0;
 }
 
@@ -112,11 +106,7 @@ static int led_pwm_add(struct device *dev, struct led_pwm_priv *priv,
                return ret;
        }
 
-       led_data->can_sleep = pwm_can_sleep(led_data->pwm);
-       if (!led_data->can_sleep)
-               led_data->cdev.brightness_set = led_pwm_set;
-       else
-               led_data->cdev.brightness_set_blocking = led_pwm_set_blocking;
+       led_data->cdev.brightness_set_blocking = led_pwm_set;
 
        /*
         * FIXME: pwm_apply_args() should be removed when switching to the