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. - function : (optional) see Documentation/devicetree/bindings/leds/common.txt - color : (optional) see Documentation/devicetree/bindings/leds/common.txt - label : (optional) see Documentation/devicetree/bindings/leds/common.txt (deprecated) - 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 #include leds { compatible = "gpio-leds"; led0 { gpios = <&mcu_pio 0 GPIO_ACTIVE_LOW>; linux,default-trigger = "disk-activity"; function = LED_FUNCTION_DISK; }; led1 { gpios = <&mcu_pio 1 GPIO_ACTIVE_HIGH>; /* Keep LED on if BIOS detected hardware fault */ default-state = "keep"; function = LED_FUNCTION_FAULT; }; }; run-control { compatible = "gpio-leds"; led0 { gpios = <&mpc8572 6 GPIO_ACTIVE_HIGH>; color = ; default-state = "off"; }; led1 { gpios = <&mpc8572 7 GPIO_ACTIVE_HIGH>; color = ; default-state = "on"; }; }; leds { compatible = "gpio-leds"; led0 { gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>; linux,default-trigger = "max8903-charger-charging"; retain-state-suspended; function = LED_FUNCTION_CHARGE; }; };