LEDs connected to GPIO lines
Required properties:
- compatible : should be “gpio-leds”.
Each LED is represented as a sub-node of the gpio-leds device. Each
node’s name represents the name of the corresponding LED.
LED sub-node properties:
- gpios : Should specify the LED’s GPIO, see “gpios property” in
Documentation/devicetree/bindings/gpio/gpio.txt. Active low LEDs should be
indicated using flags in the GPIO specifier. - label : (optional)
see Documentation/devicetree/bindings/leds/common.txt - linux,default-trigger : (optional)
see Documentation/devicetree/bindings/leds/common.txt - default-state: (optional) The initial state of the LED.
see Documentation/devicetree/bindings/leds/common.txt - retain-state-suspended: (optional) The suspend state can be retained.Such
as charge-led gpio. - retain-state-shutdown: (optional) Retain the state of the LED on shutdown.
Useful in BMC systems, for example when the BMC is rebooted while the host
remains up. - panic-indicator : (optional)
see Documentation/devicetree/bindings/leds/common.txt
Examples:
#include <dt-bindings/gpio/gpio.h>
leds {
compatible = “gpio-leds”;
hdd {
label = “Disk Activity”;
gpios = <&mcu_pio 0 GPIO_ACTIVE_LOW>;
linux,default-trigger = “disk-activity”;
};
fault {
gpios = <&mcu_pio 1 GPIO_ACTIVE_HIGH>;
/* Keep LED on if BIOS detected hardware fault */
default-state = "keep";
};
};
run-control {
compatible = “gpio-leds”;
red {
gpios = <&mpc8572 6 GPIO_ACTIVE_HIGH>;
default-state = “off”;
};
green {
gpios = <&mpc8572 7 GPIO_ACTIVE_HIGH>;
default-state = “on”;
};
};
leds {
compatible = “gpio-leds”;
charger-led {
gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "max8903-charger-charging";
retain-state-suspended;
};
};