From: Pavel Machek <pavel@ucw.cz>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Jacek Anaszewski <jacek.anaszewski@gmail.com>,
Rob Herring <robh+dt@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Baolin Wang <baolin.wang@linaro.org>,
linux-leds@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 1/5] dt-bindings: leds: Add pattern initialization from Device Tree
Date: Wed, 12 Dec 2018 13:32:21 +0100 [thread overview]
Message-ID: <20181212123221.GA12040@amd> (raw)
In-Reply-To: <1544613406-27026-2-git-send-email-krzk@kernel.org>
[-- Attachment #1: Type: text/plain, Size: 4044 bytes --]
On Wed 2018-12-12 12:16:42, Krzysztof Kozlowski wrote:
> Document new linux,trigger-pattern property for initialization of LED
> pattern trigger.
>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
> Documentation/devicetree/bindings/leds/common.txt | 36 +++++++++++++++++++++++
> 1 file changed, 36 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/leds/common.txt b/Documentation/devicetree/bindings/leds/common.txt
> index aa1399814a2a..3daccd4ea8a3 100644
> --- a/Documentation/devicetree/bindings/leds/common.txt
> +++ b/Documentation/devicetree/bindings/leds/common.txt
> @@ -37,6 +37,42 @@ Optional properties for child nodes:
> "ide-disk" - LED indicates IDE disk activity (deprecated),
> in new implementations use "disk-activity"
> "timer" - LED flashes at a fixed, configurable rate
> + "pattern" - LED alters the brightness for the specified duration with one
> + software timer (requires "led-pattern" property)
> +
> +- led-pattern : String with default pattern for certain triggers. Each trigger
> + may parse this string differently:
> + - one-shot : two numbers specifying delay on and delay off,
> + - timer : two numbers specifying delay on and delay
off,
Needs specifying that numbers are in miliseconds, at the very least.
> + - pattern : The pattern is given by a series of tuples, of
> + brightness and duration (ms). The LED is expected to traverse
> + the series and each brightness value for the specified
> + duration. Duration of 0 means brightness should immediately
> + change to new value.
> +
> + 1. For gradual dimming, the dimming interval now is set as 50
> + milliseconds. So the tuple with duration less than dimming
> + interval (50ms) is treated as a step change of brightness,
> + i.e. the subsequent brightness will be applied without adding
> + intervening dimming intervals.
> +
> + The gradual dimming format of the software pattern values should be:
> + "brightness_1 duration_1 brightness_2 duration_2 brightness_3
> + duration_3 ...".
> + For example "0 1000 255 2000" will make the LED go gradually
> + from zero-intensity to max (255) intensity in 1000
> + milliseconds, then back to zero intensity in 2000
> + milliseconds.
> +
> + 2. To make the LED go instantly from one brightness value to
> + another, pattern should use zero-time lengths (the brightness
> + must be same as the previous tuple's). So the format should be:
> + "brightness_1 duration_1 brightness_1 0 brightness_2
> + duration_2 brightness_2 0 ...".
> + For example "0 1000 0 0 255 2000 255 0" will make the LED
> + stay off for one second, then stay at max brightness for two
> + seconds.
> +
No. Duplicated code is bad, and so is duplicated documentation. Maybe
the documentation should be in device tree part, but lets put it into
separate file, and reference it from the sysfs docs.
50msec for step change is really a implementation detail of Linux. May
be worth documenting for sysfs, but not for device tree
description. People should always specify 0 if they want step change.
Actually, no, I don't think this is quite suitable.
These are arrays of integers. They probably should not be specified as
strings in dts...?
(Plus, of course, timer and one-shot are subset of pattern, all we
need is to specify number of repeats...)
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
next prev parent reply other threads:[~2018-12-12 12:32 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-12 11:16 [PATCH v3 0/5] leds: trigger: Add pattern initialization from Device Tree Krzysztof Kozlowski
2018-12-12 11:16 ` [PATCH v3 1/5] dt-bindings: leds: " Krzysztof Kozlowski
2018-12-12 12:32 ` Pavel Machek [this message]
2018-12-13 8:36 ` Krzysztof Kozlowski
2018-12-17 22:40 ` Rob Herring
2018-12-18 9:06 ` Krzysztof Kozlowski
2018-12-12 11:16 ` [PATCH v3 2/5] leds: Add helper for getting default pattern " Krzysztof Kozlowski
2018-12-12 12:22 ` Pavel Machek
2018-12-13 8:21 ` Krzysztof Kozlowski
2018-12-12 11:16 ` [PATCH v3 3/5] leds: trigger: pattern: Add pattern initialization " Krzysztof Kozlowski
2018-12-12 11:16 ` [PATCH v3 4/5] leds: trigger: oneshot: Add " Krzysztof Kozlowski
2018-12-12 11:16 ` [PATCH v3 5/5] leds: trigger: timer: " Krzysztof Kozlowski
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=20181212123221.GA12040@amd \
--to=pavel@ucw.cz \
--cc=baolin.wang@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=jacek.anaszewski@gmail.com \
--cc=krzk@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=robh+dt@kernel.org \
/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).