Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1693579

[PATCH v4 1/5] pwm-backlight: enable/disable the PWM before/after LCD enable toggle.

From Enric Balletbo i Serra <enric.balletbo@collabora.com>
Newsgroups linux.kernel
Subject [PATCH v4 1/5] pwm-backlight: enable/disable the PWM before/after LCD enable toggle.
Date 2017-07-21 12:50 +0200
Message-ID <u5DFn-3I1-7@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Before this patch the enable signal was set before the PWM signal and
vice-versa on power off. This sequence is wrong, at least, it is on
the different panels datasheets that I checked, so I inverted the sequence
to follow the specs.

For reference the following panels have the mentioned sequence:
  - N133HSE-EA1 (Innolux)
  - N116BGE (Innolux)
  - N156BGE-L21 (Innolux)
  - B101EAN0 (Auo)
  - B101AW03 (Auo)
  - LTN101NT05 (Samsung)
  - CLAA101WA01A (Chunghwa)

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
---
Changes since v3:
 - List the part numbers for the panel checked (Daniel Thompson)
Changes since v2:
 - Add this as a separate patch (Thierry Reding)
Changes since v1:
 - None

 drivers/video/backlight/pwm_bl.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/video/backlight/pwm_bl.c b/drivers/video/backlight/pwm_bl.c
index 002f1ce..909a686 100644
--- a/drivers/video/backlight/pwm_bl.c
+++ b/drivers/video/backlight/pwm_bl.c
@@ -54,10 +54,11 @@ static void pwm_backlight_power_on(struct pwm_bl_data *pb, int brightness)
 	if (err < 0)
 		dev_err(pb->dev, "failed to enable power supply\n");
 
+	pwm_enable(pb->pwm);
+
 	if (pb->enable_gpio)
 		gpiod_set_value_cansleep(pb->enable_gpio, 1);
 
-	pwm_enable(pb->pwm);
 	pb->enabled = true;
 }
 
@@ -66,12 +67,12 @@ static void pwm_backlight_power_off(struct pwm_bl_data *pb)
 	if (!pb->enabled)
 		return;
 
-	pwm_config(pb->pwm, 0, pb->period);
-	pwm_disable(pb->pwm);
-
 	if (pb->enable_gpio)
 		gpiod_set_value_cansleep(pb->enable_gpio, 0);
 
+	pwm_config(pb->pwm, 0, pb->period);
+	pwm_disable(pb->pwm);
+
 	regulator_disable(pb->power_supply);
 	pb->enabled = false;
 }
-- 
2.9.3

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH v4 1/5] pwm-backlight: enable/disable the PWM before/after LCD enable toggle. Enric Balletbo i Serra <enric.balletbo@collabora.com> - 2017-07-21 12:50 +0200
  [PATCH v4 4/5] ARM: dts: rockchip: set PWM delay backlight settings for Veyron. Enric Balletbo i Serra <enric.balletbo@collabora.com> - 2017-07-21 12:50 +0200
  [PATCH v4 5/5] ARM: dts: rockchip: set PWM delay backlight settings for Minnie Enric Balletbo i Serra <enric.balletbo@collabora.com> - 2017-07-21 12:50 +0200
  [PATCH v4 2/5] dt-bindings: pwm-backlight: add PWM delay proprieties. Enric Balletbo i Serra <enric.balletbo@collabora.com> - 2017-07-21 12:50 +0200
    Re: [PATCH v4 2/5] dt-bindings: pwm-backlight: add PWM delay  proprieties. Daniel Thompson <daniel.thompson@linaro.org> - 2017-07-24 17:30 +0200
      Re: [PATCH v4 2/5] dt-bindings: pwm-backlight: add PWM delay  proprieties. Pavel Machek <pavel@ucw.cz> - 2017-07-24 21:30 +0200
  Re: [PATCH v4 1/5] pwm-backlight: enable/disable the PWM before/after  LCD enable toggle. Daniel Thompson <daniel.thompson@linaro.org> - 2017-07-24 17:20 +0200
    Re: [PATCH v4 1/5] pwm-backlight: enable/disable the PWM before/after LCD enable toggle. "Jingoo Han" <jingoohan1@gmail.com> - 2017-07-25 19:50 +0200

csiph-web