[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200720212502.2.Iab4d2192e4cf50226e0a58d58df7d90ef92713ce@changeid>
Date: Mon, 20 Jul 2020 21:25:21 -0700
From: Alexandru Stan <amstan@...omium.org>
To: Thierry Reding <thierry.reding@...il.com>,
Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>, Lee Jones <lee.jones@...aro.org>,
Daniel Thompson <daniel.thompson@...aro.org>,
Jingoo Han <jingoohan1@...il.com>,
Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>,
Heiko Stuebner <heiko@...ech.de>,
Rob Herring <robh+dt@...nel.org>
Cc: Matthias Kaehlcke <mka@...omium.org>,
Douglas Anderson <dianders@...omium.org>,
Enric Balletbo i Serra <enric.balletbo@...labora.com>,
Alexandru Stan <amstan@...omium.org>,
dri-devel@...ts.freedesktop.org, linux-fbdev@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-pwm@...r.kernel.org
Subject: [PATCH 2/3] backlight: pwm_bl: Artificially add 0% during interpolation
Some displays need the low end of the curve cropped in order to make
them happy. In that case we still want to have the 0% point, even though
anything between 0% and 5%(example) would be skipped.
Signed-off-by: Alexandru Stan <amstan@...omium.org>
---
drivers/video/backlight/pwm_bl.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/video/backlight/pwm_bl.c b/drivers/video/backlight/pwm_bl.c
index 5193a72305a2..b24711ddf504 100644
--- a/drivers/video/backlight/pwm_bl.c
+++ b/drivers/video/backlight/pwm_bl.c
@@ -349,6 +349,14 @@ static int pwm_backlight_parse_dt(struct device *dev,
/* Fill in the last point, since no line starts here. */
table[x2] = y2;
+ /*
+ * If we don't start at 0 yet we're increasing, assume
+ * the dts wanted to crop the low end of the range, so
+ * insert a 0 to provide a display off mode.
+ */
+ if (table[0] > 0 && table[0] < table[num_levels - 1])
+ table[0] = 0;
+
/*
* As we use interpolation lets remove current
* brightness levels table and replace for the
--
2.27.0
Powered by blists - more mailing lists