# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/power/reset/gpio-poweroff.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: GPIO controlled power off maintainers: - Sebastian Reichel description: > System power off support via a GPIO line. When a shutdown is executed the operating system is expected to switch the GPIO from inactive to active. After a delay (active-delay-ms) it is expected to be switched back to inactive. After another delay (inactive-delay-ms) it is configured as active again. Finally the operating system assumes the power off failed if the system is still running after waiting some time (timeout-ms). allOf: - $ref: restart-handler.yaml# properties: compatible: const: gpio-poweroff gpios: maxItems: 1 input: type: boolean description: > Initially configure the GPIO line as an input. Only reconfigure it to an output when the power-off sequence is initiated. If this optional property is not specified, the GPIO is initialized as an output in its inactive state. active-delay-ms: default: 100 description: Delay to wait after driving gpio active inactive-delay-ms: default: 100 description: Delay to wait after driving gpio inactive priority: default: 0 timeout-ms: default: 3000 description: Time to wait before assuming the power off sequence failed. required: - compatible - gpios additionalProperties: false examples: - | gpio-poweroff { compatible = "gpio-poweroff"; gpios = <&gpio 4 0>; timeout-ms = <3000>; };