| GPIOLED(4) | Device Drivers Manual | GPIOLED(4) |
gpioled — GPIO LED
generic device driver
To compile this driver into the kernel, place the following lines in your kernel configuration file:
device gpio
device gpioledThe gpioled driver provides glue to attach
a led(4) compatible device to a GPIO pin. Each LED in the
system has a name which is used to export a device
as /dev/led/<name>. The GPIO pin can then be
controlled by writing to this device as described in
led(4).
On a device.hints(5) based system, like
MIPS, these values are configurable for
gpioled:
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";
};
};
Optionally, you can choose to 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/dts/bindings-gpio.txt.
The property name is the arbitrary name of the device in /dev/led/ to create for led(4).
The gpioled manual page first appeared in
FreeBSD 10.1.
This manual page was written by Luiz Otavio O Souza.
| May 23, 2019 | Debian |