devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Warren <swarren@wwwdotorg.org>
To: "Philip, Avinash" <avinashphilip@ti.com>
Cc: "grant.likely@secretlab.ca" <grant.likely@secretlab.ca>,
	"rob.herring@calxeda.com" <rob.herring@calxeda.com>,
	"rob@landley.net" <rob@landley.net>,
	"rpurdie@rpsys.net" <rpurdie@rpsys.net>,
	"thierry.reding@avionic-design.de"
	<thierry.reding@avionic-design.de>,
	"broonie@opensource.wolfsonmicro.com"
	<broonie@opensource.wolfsonmicro.com>,
	"shawn.guo@linaro.org" <shawn.guo@linaro.org>,
	"devicetree-discuss@lists.ozlabs.org"
	<devicetree-discuss@lists.ozlabs.org>,
	"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Nori, Sekhar" <nsekhar@ti.com>,
	"Hebbar, Gururaja" <gururaja.hebbar@ti.com>
Subject: Re: [PATCH v2] pwm_backlight: Add device tree support for Low Threshold Brightness
Date: Tue, 25 Sep 2012 00:19:14 -0600	[thread overview]
Message-ID: <50614CE2.7010301@wwwdotorg.org> (raw)
In-Reply-To: <518397C60809E147AF5323E0420B992E3E9A8449@DBDE01.ent.ti.com>

On 09/24/2012 10:29 PM, Philip, Avinash wrote:
> On Fri, Sep 21, 2012 at 23:13:39, Stephen Warren wrote:
>> On 09/21/2012 12:03 AM, Philip, Avinash wrote:
>>> Hi Stephen,
>>>
>>> On Fri, Sep 21, 2012 at 10:46:45, Stephen Warren wrote:
>>>> On 09/20/2012 10:51 PM, Philip, Avinash wrote:
>>>>> Some backlights perform poorly when driven by a PWM with a short
>>>>> duty-cycle. For such devices, the low threshold can be used to specify a
>>>>> lower bound for the duty-cycle and should be chosen to exclude the
>>>>> problematic range.
>>>>>
>>>>> This patch adds support for an optional low-threshold-brightness
>>>>> property.
>>>>
>>>>> diff --git a/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt b/Documentation/devicetree/bindings/video/backlight/pwm-backlight.txt
>>>>
>>>>>  Optional properties:
>>>>>    - pwm-names: a list of names for the PWM devices specified in the
>>>>>                 "pwms" property (see PWM binding[0])
>>>>> +  - low-threshold-brightness: brightness threshold low level. Low threshold
>>>>> +    brightness set to value so that backlight present on low end of
>>>>> +    brightness.
>>>>
>>>> For my education, why not just specify values above this value in the
>>>> brightness-levels array; how do those two interact?
>>>
>>> Please find details from 
>>> https://lkml.org/lkml/2012/7/18/284
>>
>> Hmm. That still doesn't really explain what this property does.
>>
>> I'm going to guess that if this property is present, and values in the
>> brightness-levels property get scaled between the
>> low-threshold-brightness and 255 instead of being used directly.
> 
> This is correct.
> 
>> But then, in the email you linked to, what does "But brightness-levels won't
>> be uniformly divided" mean?
> 
> For some panels, backlight would absent on low end of brightness due to low
> percentage in duty_cycle. Consider following example where backlight absent
> for brightness levels from 0 - 51.
> 
> pwms = <&pwm 0 50000>;
> brightness-levels = <0 51 53 56 62 75 101 152 255>; 
> default-brightness-level = <6>;
> 
> So in the example, brightness-levels are set to have values for backlight present.
> Here levels are not uniformly divided.

So why not just change the values so they /are/ what you want? After
all, it's just data and you can put whatever values you want there. What
is preventing you from doing this?

Perhaps e.g.:

brightness-levels = <0 101 106 112 124 150 202 304 511>;
(just multiplying everything by N, for arbitrary N=2, to get extra
precision)

... plus whatever adjustments are required to make the data "uniformly
divided", which I can't do in the example here since I'd need to know
whatever non-linear equation characterizes the backlight's PWM % duty
cycle to perceived brightness mapping.

The only thing that could be preventing this is mathematical precision.
While all the PWM DT examples I've seen have brightness-levels range
from 0..255, I don't think there is any such actual limit; you could
range from say 0..1000000 if you wanted, right?

>> Either way, the DT binding should explain exactly what this value is
>> used for, and how it affects the interpretation of values in
>> brightness-levels.
> 
> Is DT binding documentation a good place to explain this feature?
> Initially Thierry suggested document option. So I left out.

The binding documents are supposed to be a standalone description of
what the data in DT does; given general no-Linux-specific domain
knowledge, the binding document should be detailed enough for someone to
understand how to fill in the DT. So, yes, I think the binding document
would be a great place to put such documentation.

  reply	other threads:[~2012-09-25  6:19 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-21  4:51 [PATCH v2] pwm_backlight: Add device tree support for Low Threshold Brightness Philip, Avinash
2012-09-21  5:16 ` Stephen Warren
2012-09-21  6:03   ` Philip, Avinash
2012-09-21 17:43     ` Stephen Warren
2012-09-25  4:29       ` Philip, Avinash
2012-09-25  6:19         ` Stephen Warren [this message]
2012-09-26  4:35           ` Philip, Avinash
2012-09-26 15:27             ` Stephen Warren
2012-09-26 16:49               ` Thierry Reding
2012-09-27  9:24                 ` Philip, Avinash
2012-09-27  9:47                   ` Thierry Reding

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50614CE2.7010301@wwwdotorg.org \
    --to=swarren@wwwdotorg.org \
    --cc=avinashphilip@ti.com \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=grant.likely@secretlab.ca \
    --cc=gururaja.hebbar@ti.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nsekhar@ti.com \
    --cc=rob.herring@calxeda.com \
    --cc=rob@landley.net \
    --cc=rpurdie@rpsys.net \
    --cc=shawn.guo@linaro.org \
    --cc=thierry.reding@avionic-design.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).