ledtrig-oneshot.rst 1.5 KB
Newer Older
1
====================
F
Fabio Baltieri 已提交
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
One-shot LED Trigger
====================

This is a LED trigger useful for signaling the user of an event where there are
no clear trap points to put standard led-on and led-off settings.  Using this
trigger, the application needs only to signal the trigger when an event has
happened, than the trigger turns the LED on and than keeps it off for a
specified amount of time.

This trigger is meant to be usable both for sporadic and dense events.  In the
first case, the trigger produces a clear single controlled blink for each
event, while in the latter it keeps blinking at constant rate, as to signal
that the events are arriving continuously.

A one-shot LED only stays in a constant state when there are no events.  An
additional "invert" property specifies if the LED has to stay off (normal) or
on (inverted) when not rearmed.

The trigger can be activated from user space on led class devices as shown
21
below::
F
Fabio Baltieri 已提交
22 23 24

  echo oneshot > trigger

25 26
This adds sysfs attributes to the LED that are documented in:
Documentation/ABI/testing/sysfs-class-led-trigger-oneshot
F
Fabio Baltieri 已提交
27

28
Example use-case: network devices, initialization::
F
Fabio Baltieri 已提交
29 30 31 32 33

  echo oneshot > trigger # set trigger for this led
  echo 33 > delay_on     # blink at 1 / (33 + 33) Hz on continuous traffic
  echo 33 > delay_off

34
interface goes up::
F
Fabio Baltieri 已提交
35 36 37

  echo 1 > invert # set led as normally-on, turn the led on

38
packet received/transmitted::
F
Fabio Baltieri 已提交
39 40 41

  echo 1 > shot # led starts blinking, ignored if already blinking

42
interface goes down::
F
Fabio Baltieri 已提交
43 44

  echo 0 > invert # set led as normally-off, turn the led off