Commit 2b9b1620 authored by Thierry Reding's avatar Thierry Reding Committed by Thierry Reding

pwm-backlight: Add optional enable GPIO

To support a wider variety of backlight setups, introduce an optional
enable GPIO. Legacy users of the platform data already have a means of
supporting GPIOs by using the .init(), .exit() and .notify() hooks. DT
users however cannot use those, so an alternative method is required.

In order to ease the introduction of the optional enable GPIO, make it
available in the platform data first, so that existing users can be
converted. Once that has happened a second patch will add code to make
use of it in the driver.
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent 97c38437
...@@ -6,6 +6,9 @@ ...@@ -6,6 +6,9 @@
#include <linux/backlight.h> #include <linux/backlight.h>
/* TODO: convert to gpiod_*() API once it has been merged */
#define PWM_BACKLIGHT_GPIO_ACTIVE_LOW (1 << 0)
struct platform_pwm_backlight_data { struct platform_pwm_backlight_data {
int pwm_id; int pwm_id;
unsigned int max_brightness; unsigned int max_brightness;
...@@ -13,6 +16,8 @@ struct platform_pwm_backlight_data { ...@@ -13,6 +16,8 @@ struct platform_pwm_backlight_data {
unsigned int lth_brightness; unsigned int lth_brightness;
unsigned int pwm_period_ns; unsigned int pwm_period_ns;
unsigned int *levels; unsigned int *levels;
int enable_gpio;
unsigned long enable_gpio_flags;
int (*init)(struct device *dev); int (*init)(struct device *dev);
int (*notify)(struct device *dev, int brightness); int (*notify)(struct device *dev, int brightness);
void (*notify_after)(struct device *dev, int brightness); void (*notify_after)(struct device *dev, int brightness);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment