xenial (4) gpioled.4freebsd.gz

NAME
gpioled — GPIO led generic device driver
SYNOPSIS
device gpio device gpioled This driver attaches a led(4) device to a GPIO pin.
DESCRIPTION
The gpioled driver provides a glue to attach a led(4) compatible device to a GPIO pin. Each led on the system has a name which is used to export a device in /dev/led/<name>. The GPIO pin can then be controlled by writing to this device as described on led(4). On a hint based system, like MIPS, these values are configureable for gpioled: hint.gpioled.%d.at The gpiobus you are attaching to. Normally assigned to gpiobus0. hint.gpioled.%d.name Arbitrary name of device in /dev/led/ to create for led(4). hint.gpioled.%d.pins Which pin on the GPIO interface to map to this instance. Please note that this mask should only ever have one bit set (any others bits - i.e., pins - will be ignored). On a FDT(4) based system, like ARM, the dts part for a gpioled device usually looks like: gpio: gpio { gpio-controller; ... led0 { compatible = "gpioled"; gpios = <&gpio 16 2 0>; /* GPIO pin 16. */ name = "ok"; }; led1 { compatible = "gpioled"; gpios = <&gpio 17 2 0>; /* GPIO pin 17. */ name = "user-led1"; }; }; And optionally, you can choose combine all the leds under a single “gpio-leds” compatible node: simplebus0 { ... leds { compatible = "gpio-leds"; led0 { gpios = <&gpio 16 2 0>; name = "ok" }; led1 { gpios = <&gpio 17 2 0>; name = "user-led1" }; }; }; Both methods are equally supported and it is possible to have the leds defined with any sort of mix between the methods. The only restriction is that a GPIO pin cannot be mapped by two different (gpio)leds. For more details about the gpios property, please consult /usr/src/sys/boot/fdt/dts/bindings-gpio.txt. The property name is the arbitrary name of device in /dev/led/ to create for led(4).
SEE ALSO
fdt(4), gpio(4), led(4), gpioiic(4)
HISTORY
The gpioled manual page first appeared in FreeBSD 10.1.
AUTHORS
This manual page was written by Luiz Otavio O Souza.