Lines Matching +full:gpio +full:- +full:restart

1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/power/reset/gpio-restart.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: GPIO controlled reset
10 - Sebastian Reichel <sre@kernel.org>
13 Drive a GPIO line that can be used to restart the system from a restart handler.
16 request the given gpio line and install a restart handler. If the optional properties
17 'open-source' is not found, the GPIO line will be driven in the inactive state. Otherwise its
18 not driven until the restart is initiated.
20 When the system is restarted, the restart handler will be invoked in priority order. The GPIO
22 This will also cause an inactive->active edge condition, triggering positive edge triggered
23 reset. After a delay specified by active-delay, the GPIO is set to inactive, thus causing an
24 active->inactive edge, triggering negative edge triggered reset. After a delay specified by
25 inactive-delay, the GPIO is driven active again. After a delay specified by wait-delay, the
26 restart handler completes allowing other restart handlers to be attempted.
29 - $ref: restart-handler.yaml#
33 const: gpio-restart
36 description: The GPIO to set high/low, see "gpios property" in
37 Documentation/devicetree/bindings/gpio/gpio.txt. If the pin should be low to reset the board
38 set it to "Active Low", otherwise set GPIO to "Active High".
40 open-source:
42 description: Treat the GPIO as being open source and defer driving it to when the restart is
43 initiated. If this optional property is not specified, the GPIO is initialized as an output
49 active-delay:
51 description: Delay (default 100) to wait after driving gpio active [ms]
54 inactive-delay:
56 description: Delay (default 100) to wait after driving gpio inactive [ms]
59 wait-delay:
61 description: Delay (default 3000) to wait after completing restart sequence [ms]
67 - compatible
68 - gpios
71 - |
72 gpio-restart {
73 compatible = "gpio-restart";
74 gpios = <&gpio 4 0>;
76 active-delay = <100>;
77 inactive-delay = <100>;
78 wait-delay = <3000>;