linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jacek Anaszewski <j.anaszewski@samsung.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Jingoo Han <jingoohan1@gmail.com>,
	Lee Jones <lee.jones@linaro.org>,
	linux-leds@vger.kernel.org, linux-fbdev@vger.kernel.org,
	Andrew Lunn <andrew@lunn.ch>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: [PATCH 3/3] devicetree: Add led-backlight binding
Date: Wed, 26 Aug 2015 09:56:26 +0000	[thread overview]
Message-ID: <55DD8D4A.8010507@samsung.com> (raw)
In-Reply-To: <55DD82C4.50405@ti.com>

On 08/26/2015 11:11 AM, Tomi Valkeinen wrote:
>
>
> On 26/08/15 10:07, Jacek Anaszewski wrote:
>> On 08/25/2015 05:41 PM, Tomi Valkeinen wrote:
>>>
>>>
>>> On 25/08/15 16:39, Jacek Anaszewski wrote:
>>>
>>>>> +Example:
>>>>> +
>>>>> +    backlight {
>>>>> +        compatible = "led-backlight";
>>>>> +        leds = <&backlight_led>;
>>>>> +
>>>>> +        brightness-levels = <0 4 8 16 32 64 128 255>;
>>>>
>>>> brightness level is not a suitable unit for describing LED brightness
>>>> in a Device Tree, as it is not a physical unit. We have led-max-microamp
>>>> property for this, expressed in microamperes, please refer to [0] from
>>>> linux-next.
>>>
>>> Hmm, ok, but what should the driver do with microamperes? As far as I
>>> see, "enum led_brightness" (which is between 0-255) is used to set the
>>> brightness to LEDs. I don't see any function accepting microamperes.
>>
>> This is implementation detail. You can convert microamperes to
>> enum led_brightness in the driver. Please refer to the discussion [1].
>
> The led_set_brightness() takes "enum led_brightness", so I don't
> understand what this driver would do with the microampere value. It
> could, of course, do an arbitrary conversion, say, direct mapping of the
> mA value to brightness, but that would just confuse things further.

OK, I was looking at the problem from LED-centric perspective. Indeed,
backlight subsystem has no other way to pass brightness to the LED
subsystem than in the form of levels. However, the last word belongs
to DT maintainer in this matter.

Cc'ing devicetree@vger.kernel.org.

> If there was a led_set_microampere(), supported by all led devices, then
> yes, the above should be microamperes.
>
> Or are you saying that I should have the binding use microamperes, and
> just do a naive microampere -> brightness conversion in this driver, and
> hope that in the future this driver can be changes to pass the
> micrompere value directly to the underlying LED driver?
>
> And speaking of microamperes for LED drivers, what's a meaningful
> microampere conversion for LED drivers that don't deal with microamperes
> at all? For example, the LED chip we're using, TLC59108, is basically a
> PWM chip. Can we somehow calculate microamperes if we know duty cycle
> and period?

For this type of drivers we have to resort to levels in DT.
It shouldn't serve as an excuse for not describing the rest of
hardware in a better way, though.

-- 
Best Regards,
Jacek Anaszewski

  reply	other threads:[~2015-08-26  9:56 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-25 11:33 [PATCH 0/3] backlight: led-backlight driver Tomi Valkeinen
2015-08-25 11:34 ` [PATCH 1/3] leds: Add of_led_get() and led_put() Tomi Valkeinen
2015-08-25 12:18   ` Andrew Lunn
2015-08-25 12:53     ` Tomi Valkeinen
2015-09-08 11:23     ` Tomi Valkeinen
2015-08-25 13:25   ` Jacek Anaszewski
2015-09-07 12:35     ` Tomi Valkeinen
2015-09-07 14:11       ` Jacek Anaszewski
2015-09-08  7:10         ` Tomi Valkeinen
2015-09-08  9:21           ` Jacek Anaszewski
2015-09-08 10:41             ` Tomi Valkeinen
2015-09-08 10:57               ` Jacek Anaszewski
2015-09-07 13:18     ` Tomi Valkeinen
2015-09-07 14:10       ` Jacek Anaszewski
2015-08-25 11:34 ` [PATCH 2/3] backlight: add led-backlight driver Tomi Valkeinen
2015-08-25 12:39   ` Andrew Lunn
2015-08-25 13:00     ` Tomi Valkeinen
2015-08-25 11:34 ` [PATCH 3/3] devicetree: Add led-backlight binding Tomi Valkeinen
2015-08-25 13:39   ` Jacek Anaszewski
2015-08-25 15:41     ` Tomi Valkeinen
2015-08-26  7:07       ` Jacek Anaszewski
2015-08-26  9:11         ` Tomi Valkeinen
2015-08-26  9:56           ` Jacek Anaszewski [this message]
2015-08-31 23:12             ` Rob Herring
2015-09-04 15:03               ` Jacek Anaszewski

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=55DD8D4A.8010507@samsung.com \
    --to=j.anaszewski@samsung.com \
    --cc=andrew@lunn.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=jingoohan1@gmail.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=tomi.valkeinen@ti.com \
    /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).