| From 9b1a18bef446d27335cedf5c1fe99442f752ff3c Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 25 Apr 2018 19:42:51 +0200 |
| Subject: staging: fbtft: Stop using BL_CORE_DRIVER1 |
| |
| From: Daniel Vetter <daniel.vetter@ffwll.ch> |
| |
| [ Upstream commit 9adfe5c89be497bb8761a9f788297c258d535334 ] |
| |
| Leaking driver internal tracking into the already massively confusing |
| backlight power tracking is really confusing. |
| |
| Luckily we have already a drvdata structure, so fixing this is really |
| easy. |
| |
| Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> |
| Acked-by: Daniel Thompson <daniel.thompson@linaro.org> |
| Reviewed-by: Jani Nikula <jani.nikula@intel.com> |
| Signed-off-by: Lee Jones <lee.jones@linaro.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/staging/fbtft/fbtft-core.c | 4 ++-- |
| drivers/staging/fbtft/fbtft.h | 1 + |
| 2 files changed, 3 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c |
| index 587f68aa466c2..f4682ba44cd74 100644 |
| --- a/drivers/staging/fbtft/fbtft-core.c |
| +++ b/drivers/staging/fbtft/fbtft-core.c |
| @@ -247,7 +247,7 @@ static int fbtft_request_gpios_dt(struct fbtft_par *par) |
| static int fbtft_backlight_update_status(struct backlight_device *bd) |
| { |
| struct fbtft_par *par = bl_get_data(bd); |
| - bool polarity = !!(bd->props.state & BL_CORE_DRIVER1); |
| + bool polarity = par->polarity; |
| |
| fbtft_par_dbg(DEBUG_BACKLIGHT, par, |
| "%s: polarity=%d, power=%d, fb_blank=%d\n", |
| @@ -296,7 +296,7 @@ void fbtft_register_backlight(struct fbtft_par *par) |
| /* Assume backlight is off, get polarity from current state of pin */ |
| bl_props.power = FB_BLANK_POWERDOWN; |
| if (!gpio_get_value(par->gpio.led[0])) |
| - bl_props.state |= BL_CORE_DRIVER1; |
| + par->polarity = true; |
| |
| bd = backlight_device_register(dev_driver_string(par->info->device), |
| par->info->device, par, &fbtft_bl_ops, &bl_props); |
| diff --git a/drivers/staging/fbtft/fbtft.h b/drivers/staging/fbtft/fbtft.h |
| index 89c4b5b76ce69..0275319906748 100644 |
| --- a/drivers/staging/fbtft/fbtft.h |
| +++ b/drivers/staging/fbtft/fbtft.h |
| @@ -241,6 +241,7 @@ struct fbtft_par { |
| ktime_t update_time; |
| bool bgr; |
| void *extra; |
| + bool polarity; |
| }; |
| |
| #define NUMARGS(...) (sizeof((int[]){__VA_ARGS__})/sizeof(int)) |
| -- |
| 2.20.1 |
| |