116 lines
4.8 KiB
Plaintext
116 lines
4.8 KiB
Plaintext
|
* Common leds properties.
|
||
|
|
||
|
LED and flash LED devices provide the same basic functionality as current
|
||
|
regulators, but extended with LED and flash LED specific features like
|
||
|
blinking patterns, flash timeout, flash faults and external flash strobe mode.
|
||
|
|
||
|
Many LED devices expose more than one current output that can be connected
|
||
|
to one or more discrete LED component. Since the arrangement of connections
|
||
|
can influence the way of the LED device initialization, the LED components
|
||
|
have to be tightly coupled with the LED device binding. They are represented
|
||
|
by child nodes of the parent LED device binding.
|
||
|
|
||
|
Optional properties for child nodes:
|
||
|
- led-sources : List of device current outputs the LED is connected to. The
|
||
|
outputs are identified by the numbers that must be defined
|
||
|
in the LED device binding documentation.
|
||
|
- label : The label for this LED. If omitted, the label is taken from the node
|
||
|
name (excluding the unit address). It has to uniquely identify
|
||
|
a device, i.e. no other LED class device can be assigned the same
|
||
|
label.
|
||
|
|
||
|
- default-state : The initial state of the LED. Valid values are "on", "off",
|
||
|
and "keep". If the LED is already on or off and the default-state property is
|
||
|
set the to same value, then no glitch should be produced where the LED
|
||
|
momentarily turns off (or on). The "keep" setting will keep the LED at
|
||
|
whatever its current state is, without producing a glitch. The default is
|
||
|
off if this property is not present.
|
||
|
|
||
|
- linux,default-trigger : This parameter, if present, is a
|
||
|
string defining the trigger assigned to the LED. Current triggers are:
|
||
|
"backlight" - LED will act as a back-light, controlled by the framebuffer
|
||
|
system
|
||
|
"default-on" - LED will turn on (but for leds-gpio see "default-state"
|
||
|
property in Documentation/devicetree/bindings/leds/leds-gpio.txt)
|
||
|
"heartbeat" - LED "double" flashes at a load average based rate
|
||
|
"disk-activity" - LED indicates disk activity
|
||
|
"ide-disk" - LED indicates IDE disk activity (deprecated),
|
||
|
in new implementations use "disk-activity"
|
||
|
"timer" - LED flashes at a fixed, configurable rate
|
||
|
|
||
|
- led-max-microamp : Maximum LED supply current in microamperes. This property
|
||
|
can be made mandatory for the board configurations
|
||
|
introducing a risk of hardware damage in case an excessive
|
||
|
current is set.
|
||
|
For flash LED controllers with configurable current this
|
||
|
property is mandatory for the LEDs in the non-flash modes
|
||
|
(e.g. torch or indicator).
|
||
|
|
||
|
- panic-indicator : This property specifies that the LED should be used,
|
||
|
if at all possible, as a panic indicator.
|
||
|
|
||
|
- trigger-sources : List of devices which should be used as a source triggering
|
||
|
this LED activity. Some LEDs can be related to a specific
|
||
|
device and should somehow indicate its state. E.g. USB 2.0
|
||
|
LED may react to device(s) in a USB 2.0 port(s).
|
||
|
Another common example is switch or router with multiple
|
||
|
Ethernet ports each of them having its own LED assigned
|
||
|
(assuming they are not hardwired). In such cases this
|
||
|
property should contain phandle(s) of related source
|
||
|
device(s).
|
||
|
In many cases LED can be related to more than one device
|
||
|
(e.g. one USB LED vs. multiple USB ports). Each source
|
||
|
should be represented by a node in the device tree and be
|
||
|
referenced by a phandle and a set of phandle arguments. A
|
||
|
length of arguments should be specified by the
|
||
|
#trigger-source-cells property in the source node.
|
||
|
|
||
|
Required properties for flash LED child nodes:
|
||
|
- flash-max-microamp : Maximum flash LED supply current in microamperes.
|
||
|
- flash-max-timeout-us : Maximum timeout in microseconds after which the flash
|
||
|
LED is turned off.
|
||
|
|
||
|
For controllers that have no configurable current the flash-max-microamp
|
||
|
property can be omitted.
|
||
|
For controllers that have no configurable timeout the flash-max-timeout-us
|
||
|
property can be omitted.
|
||
|
|
||
|
* Trigger source providers
|
||
|
|
||
|
Each trigger source should be represented by a device tree node. It may be e.g.
|
||
|
a USB port or an Ethernet device.
|
||
|
|
||
|
Required properties for trigger source:
|
||
|
- #trigger-source-cells : Number of cells in a source trigger. Typically 0 for
|
||
|
nodes of simple trigger sources (e.g. a specific USB
|
||
|
port).
|
||
|
|
||
|
* Examples
|
||
|
|
||
|
gpio-leds {
|
||
|
compatible = "gpio-leds";
|
||
|
|
||
|
system-status {
|
||
|
label = "Status";
|
||
|
linux,default-trigger = "heartbeat";
|
||
|
gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>;
|
||
|
};
|
||
|
|
||
|
usb {
|
||
|
gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
|
||
|
trigger-sources = <&ohci_port1>, <&ehci_port1>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
max77693-led {
|
||
|
compatible = "maxim,max77693-led";
|
||
|
|
||
|
camera-flash {
|
||
|
label = "Flash";
|
||
|
led-sources = <0>, <1>;
|
||
|
led-max-microamp = <50000>;
|
||
|
flash-max-microamp = <320000>;
|
||
|
flash-max-timeout-us = <500000>;
|
||
|
};
|
||
|
};
|