openwrt/target/linux/bcm27xx/patches-5.15/950-0566-overlays-Additional-parameters-for-gpio-poweroff.patch
Álvaro Fernández Rojas 20ea6adbf1 bcm27xx: add support for linux v5.15
Build system: x86_64
Build-tested: bcm2708, bcm2709, bcm2710, bcm2711
Run-tested: bcm2708/RPiB+, bcm2709/RPi3B, bcm2710/RPi3B, bcm2711/RPi4B

Signed-off-by: Marty Jones <mj8263788@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2022-05-17 15:11:22 +02:00

51 lines
2.3 KiB
Diff

From ae5bd19ff96560fb75a75c7d2374bed60bbd9669 Mon Sep 17 00:00:00 2001
From: Phil Elwell <phil@raspberrypi.com>
Date: Thu, 11 Nov 2021 10:24:02 +0000
Subject: [PATCH] overlays: Additional parameters for gpio-poweroff
The gpio-poweroff driver supports active-delay-ms and inactive-delay-ms
properties. Add parameters to set these parameters - active_delay_ms
and inactive_delay_ms.
See: https://forums.raspberrypi.com/viewtopic.php?t=323508
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
---
arch/arm/boot/dts/overlays/README | 7 +++++++
arch/arm/boot/dts/overlays/gpio-poweroff-overlay.dts | 2 ++
2 files changed, 9 insertions(+)
--- a/arch/arm/boot/dts/overlays/README
+++ b/arch/arm/boot/dts/overlays/README
@@ -1155,6 +1155,11 @@ Info: Drives a GPIO high or low on pow
or reboot). This also disables the ability to trigger a boot by driving
GPIO3 low.
+ The GPIO starts in an inactive state. At poweroff time it is driven
+ active for 100ms, then inactive for 100ms, then active again. It is
+ safe to remove the power at any point after the initial activation of
+ the GPIO.
+
Users of this overlay are required to provide an external mechanism to
switch off the power supply when signalled - failure to do so results
in a kernel BUG, increased power consumption and undefined behaviour.
@@ -1170,6 +1175,8 @@ Params: gpiopin GPIO for
input Set if the gpio pin should be configured as
an input.
export Set to export the configured pin to sysfs
+ active_delay_ms Initial GPIO active period (default 100)
+ inactive_delay_ms Subsequent GPIO inactive period (default 100)
timeout_ms Specify (in ms) how long the kernel waits for
power-down before issuing a WARN (default 3000).
--- a/arch/arm/boot/dts/overlays/gpio-poweroff-overlay.dts
+++ b/arch/arm/boot/dts/overlays/gpio-poweroff-overlay.dts
@@ -33,5 +33,7 @@
input = <&power_ctrl>,"input?";
export = <&power_ctrl>,"export?";
timeout_ms = <&power_ctrl>,"timeout-ms:0";
+ active_delay_ms = <&power_ctrl>,"active-delay-ms:0";
+ inactive_delay_ms = <&power_ctrl>,"inactive-delay-ms:0";
};
};