OSDN Git Service

backlight: gpio_backlight: Delete pdata inversion
authorLinus Walleij <linus.walleij@linaro.org>
Tue, 30 May 2017 11:48:22 +0000 (13:48 +0200)
committerLee Jones <lee.jones@linaro.org>
Mon, 7 Aug 2017 16:11:28 +0000 (17:11 +0100)
The option to invert the output of the GPIO (active low) is
not used by the only platform still using platform data to
set up a GPIO backlight (one SH board). Delete the option
as we do not expect to expand the use of board files for
this driver, and GPIO descriptors intrinsically keep track
of any signal inversion.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Daniel Thompson <daniel.thompson@linaro.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/video/backlight/gpio_backlight.c
include/linux/platform_data/gpio_backlight.h

index 5ffaff1..e470da9 100644 (file)
@@ -25,7 +25,6 @@ struct gpio_backlight {
        struct device *fbdev;
 
        struct gpio_desc *gpiod;
-       int active;
        int def_value;
 };
 
@@ -39,8 +38,7 @@ static int gpio_backlight_update_status(struct backlight_device *bl)
            bl->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK))
                brightness = 0;
 
-       gpiod_set_value_cansleep(gbl->gpiod,
-                                brightness ? gbl->active : !gbl->active);
+       gpiod_set_value_cansleep(gbl->gpiod, brightness);
 
        return 0;
 }
@@ -69,8 +67,6 @@ static int gpio_backlight_probe_dt(struct platform_device *pdev,
 
        gbl->def_value = of_property_read_bool(np, "default-on");
        flags = gbl->def_value ? GPIOD_OUT_HIGH : GPIOD_OUT_LOW;
-       /* GPIO descriptors keep track of inversion */
-       gbl->active = 1;
 
        gbl->gpiod = devm_gpiod_get(dev, NULL, flags);
        if (IS_ERR(gbl->gpiod)) {
@@ -121,15 +117,8 @@ static int gpio_backlight_probe(struct platform_device *pdev)
                unsigned long flags = GPIOF_DIR_OUT;
 
                gbl->fbdev = pdata->fbdev;
-               gbl->active = pdata->active_low ? 0 : 1;
                gbl->def_value = pdata->def_value;
-
-               if (gbl->active)
-                       flags |= gbl->def_value ?
-                               GPIOF_INIT_HIGH : GPIOF_INIT_LOW;
-               else
-                       flags |= gbl->def_value ?
-                               GPIOF_INIT_LOW : GPIOF_INIT_HIGH;
+               flags |= gbl->def_value ? GPIOF_INIT_HIGH : GPIOF_INIT_LOW;
 
                ret = devm_gpio_request_one(gbl->dev, pdata->gpio, flags,
                                            pdata ? pdata->name : "backlight");
index 5ae0d9c..683d904 100644 (file)
@@ -14,7 +14,6 @@ struct gpio_backlight_platform_data {
        struct device *fbdev;
        int gpio;
        int def_value;
-       bool active_low;
        const char *name;
 };