Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
GPIOLED(4)	       FreeBSD Kernel Interfaces Manual		    GPIOLED(4)

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	writ-
     ing to this device	as described in	led(4).

     On	a device.hints(5) based	system,	like MIPS, these values	are config-
     urable 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).

     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/boot/fdt/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.

FreeBSD	11.1			 May 14, 2014			  FreeBSD 11.1

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | HISTORY | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=gpioled&sektion=4&manpath=FreeBSD+11.0-RELEASE+and+Ports>

home | help