60 lines
1.6 KiB
YAML
60 lines
1.6 KiB
YAML
|
# 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 <sre@kernel.org>
|
||
|
|
||
|
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).
|
||
|
|
||
|
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
|
||
|
|
||
|
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>;
|
||
|
};
|