mirror of
https://github.com/torvalds/linux.git
synced 2024-12-19 17:41:29 +00:00
1dd7093742
Document new led-pattern property for initialization of LED triggers. The property format is trigger-specific (except being array of integers). For pattern trigger, the explanation of pattern format was moved to a common file shared with sysfs ABI. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Acked-by: Pavel Machek <pavel@ucw.cz> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
50 lines
2.0 KiB
Plaintext
50 lines
2.0 KiB
Plaintext
* Pattern format for LED pattern trigger
|
|
|
|
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, and writing malformed pattern deactivates any active one.
|
|
|
|
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 (using sysfs interface):
|
|
|
|
echo 0 1000 255 2000 > pattern
|
|
|
|
It will make the LED go gradually from zero-intensity to max (255) intensity in
|
|
1000 milliseconds, then back to zero intensity in 2000 milliseconds:
|
|
|
|
LED brightness
|
|
^
|
|
255-| / \ / \ /
|
|
| / \ / \ /
|
|
| / \ / \ /
|
|
| / \ / \ /
|
|
0-| / \/ \/
|
|
+---0----1----2----3----4----5----6------------> time (s)
|
|
|
|
2. To make the LED go instantly from one brightness value to another, we 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 (using sysfs interface):
|
|
|
|
echo 0 1000 0 0 255 2000 255 0 > pattern
|
|
|
|
It will make the LED stay off for one second, then stay at max brightness for
|
|
two seconds:
|
|
|
|
LED brightness
|
|
^
|
|
255-| +---------+ +---------+
|
|
| | | | |
|
|
| | | | |
|
|
| | | | |
|
|
0-| -----+ +----+ +----
|
|
+---0----1----2----3----4----5----6------------> time (s)
|