About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / devicetree / bindings / gpio / gpio-poweroff.txt




Custom Search

Based on kernel version 3.15.4. Page generated on 2014-07-07 09:00 EST.

1	Driver a GPIO line that can be used to turn the power off.
2	
3	The driver supports both level triggered and edge triggered power off.
4	At driver load time, the driver will request the given gpio line and
5	install a pm_power_off handler. If the optional properties 'input' is
6	not found, the GPIO line will be driven in the inactive
7	state. Otherwise its configured as an input.
8	
9	When the pm_power_off is called, the gpio is configured as an output,
10	and drive active, so triggering a level triggered power off
11	condition. This will also cause an inactive->active edge condition, so
12	triggering positive edge triggered power off. After a delay of 100ms,
13	the GPIO is set to inactive, thus causing an active->inactive edge,
14	triggering negative edge triggered power off. After another 100ms
15	delay the GPIO is driver active again. If the power is still on and
16	the CPU still running after a 3000ms delay, a WARN_ON(1) is emitted.
17	
18	Required properties:
19	- compatible : should be "gpio-poweroff".
20	- gpios : The GPIO to set high/low, see "gpios property" in
21	  Documentation/devicetree/bindings/gpio/gpio.txt. If the pin should be
22	  low to power down the board set it to "Active Low", otherwise set
23	  gpio to "Active High".
24	
25	Optional properties:
26	- input : Initially configure the GPIO line as an input. Only reconfigure
27	  it to an output when the pm_power_off function is called. If this optional
28	  property is not specified, the GPIO is initialized as an output in its
29	  inactive state.
30	
31	Examples:
32	
33	gpio-poweroff {
34		compatible = "gpio-poweroff";
35		gpios = <&gpio 4 0>;
36	};
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.