Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753384AbeAQOCz (ORCPT + 1 other); Wed, 17 Jan 2018 09:02:55 -0500 Received: from mail-wm0-f65.google.com ([74.125.82.65]:41720 "EHLO mail-wm0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752778AbeAQOCK (ORCPT ); Wed, 17 Jan 2018 09:02:10 -0500 X-Google-Smtp-Source: ACJfBottjCYopurWJdjwO4b9suwIHEwCHJCrn0b3c0n1DGZbyOC3k1NKzx/tNP7w+dkGptZ5bAY64w== From: Daniel Vetter To: DRI Development Cc: LKML , Daniel Vetter , Lee Jones , Daniel Thompson , Jingoo Han , Thomas Petazzoni , Daniel Vetter Subject: [PATCH 4/6] staging/fbtft: Stop using BL_CORE_DRIVER1 Date: Wed, 17 Jan 2018 15:01:57 +0100 Message-Id: <20180117140159.27611-4-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180117140159.27611-1-daniel.vetter@ffwll.ch> References: <20180117140159.27611-1-daniel.vetter@ffwll.ch> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: 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. Cc: Lee Jones Cc: Daniel Thompson Cc: Jingoo Han Cc: Thomas Petazzoni Signed-off-by: Daniel Vetter --- 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 6d0363deba61..448929cc7ba1 100644 --- a/drivers/staging/fbtft/fbtft-core.c +++ b/drivers/staging/fbtft/fbtft-core.c @@ -255,7 +255,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", @@ -305,7 +305,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, diff --git a/drivers/staging/fbtft/fbtft.h b/drivers/staging/fbtft/fbtft.h index 488ab788138e..54de7cdfdff7 100644 --- a/drivers/staging/fbtft/fbtft.h +++ b/drivers/staging/fbtft/fbtft.h @@ -240,6 +240,7 @@ struct fbtft_par { ktime_t update_time; bool bgr; void *extra; + bool polarity; }; #define NUMARGS(...) (sizeof((int[]){__VA_ARGS__})/sizeof(int)) -- 2.15.1