Provided by: freebsd-manpages_12.2-2_all bug

NAME

       gpioled — GPIO LED generic device driver

SYNOPSIS

       To compile this driver into the kernel, place the following lines in your kernel configuration file:

             device gpio
             device gpioled

DESCRIPTION

       The  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:

       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 other bits -  i.e.,  pins  -  will  be
                              ignored).

       hint.gpioled.%d.invert
                              If set to 1, the pin will be set to 0 to light the LED, and 1 to clear it.

       hint.gpioled.%d.state  The  initial  state of the LED when the driver takes control over it.  If set to 1
                              or 0, the LED will be on or off correspondingly.  If set to -1, the  LED  will  be
                              kept in its original state.

       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).

SEE ALSO

       fdt(4), gpio(4), gpioiic(4), led(4)

HISTORY

       The gpioled manual page first appeared in FreeBSD 10.1.

AUTHORS

       This manual page was written by Luiz Otavio O Souza.

Debian                                            May 23, 2019                                        GPIOLED(4)