From: Milo Kim <milo.kim@ti.com>
To: Bryan Wu <cooloney@gmail.com>,
Jacek Anaszewski <j.anaszewski@samsung.com>
Cc: Linux LED Subsystem <linux-leds@vger.kernel.org>,
Richard Purdie <rpurdie@rpsys.net>,
Sakari Ailus <sakari.ailus@iki.fi>
Subject: Re: brightness units
Date: Wed, 2 Apr 2014 08:42:24 +0900 [thread overview]
Message-ID: <533B4EE0.9000402@ti.com> (raw)
In-Reply-To: <CAK5ve-LNU_BGUB_HxsbgiO4baM-39C7PWHRVx0DL=JTYfJGSuA@mail.gmail.com>
Hi Jacek and Bryan,
On 04/02/2014 07:09 AM, Bryan Wu wrote:
> On Tue, Apr 1, 2014 at 12:21 AM, Jacek Anaszewski
> <j.anaszewski@samsung.com> wrote:
>> I am currently integrating LED subsystem and V4L2 Flash API.
>> V4L2 Flash API defines units of torch and flash intensity
>> in milliampers. In the LED subsystem documentation I can't
>> find any reference to the brightness units. On the other
>> hand there is led_brightness enum defined in the <linux/leds.h>
>> header, with LED_FULL = 255, but not all leds drivers use it.
>> I am aware that there are LEDs that can be only turned on/off
>> without any possibility to set the current and in such cases
>> LED_FULL doesn't reflect the current set.
>>
>
> Actually led_brightness is an logic concept not like milliampers,
> since different led drivers has different implementation which is
> hardware related. Like PWM led driver, it will be converted to duty
> cycles.
>
> For current control I do see some specific driver like LP55xx have it
> but not for every one.
>
>> So far I've assumed that brightness is expressed in milliampers
>> and I don't stick to the LED_FULL limit. It allows for passing
>> flash/torch intensity from V4L2 controls to the leds API
>> without conversion. I am not sure if the units should be
>> fixed to milliampers in the LED subsystem or not. It would
>> clarify the situation, but if the existing LED drivers don't
>> stick to this unit then it would make a confusion.
>>
>
> We probably need to convert those intensity to brightness numbers, for
> example mapping the intensity value to 0 ~ 255 brightness level and
> pass it to LED subsystem.
>
>> In view of the above I'd like to ask for any advice on
>> how to proceed.
In LP55xx drivers, brightness and current are separate feature.
Brightness is PWM output from the LED device. It's exactly matched with
LED subsystem.
Current setting is used for output limit of each LED channel. This is
the device specific feature. It's not max brightness domain.
To support various LED components, we need this feature. If the output
current is too big, some LED components will be burned.
My opinion, it would be better if you could scale the flash/torch
intensity and pass to the brightness of LED subsystem.
Specific milliamps value is device specific, so we may need generic
interface to set the intensity by using LED subsystem.
Best regards,
Milo
next prev parent reply other threads:[~2014-04-01 23:42 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-01 7:21 brightness units Jacek Anaszewski
2014-04-01 22:09 ` Bryan Wu
2014-04-01 23:42 ` Milo Kim [this message]
2014-04-02 15:17 ` Sakari Ailus
2014-04-03 14:54 ` 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=533B4EE0.9000402@ti.com \
--to=milo.kim@ti.com \
--cc=cooloney@gmail.com \
--cc=j.anaszewski@samsung.com \
--cc=linux-leds@vger.kernel.org \
--cc=rpurdie@rpsys.net \
--cc=sakari.ailus@iki.fi \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.