-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement device wipe using the hardware button on Green (#3523)
* Improve LED naming in U-Boot DTS Port Stefan's patch from Linux patchset to U-Boot. * Implement device wipe using the hardware button on Green Unlike Yellow, Green doesn't have a way to easily wipe the device, e.g. if the user forgets the password - in that case the only option is to use a microSD card and reflash the system. Fortunately, Green has a hardware button wired to the PMIC chip which exposes the button state in one of the registers. Read this value in U-Boot and decide if cmdline flag for device wipe should be set - same as we do on Yellow. Also enable LED driver and command in U-Boot. In the current implementation, if the button is held for ~5 seconds when plugging in the device (this time includes DDR training, SPL, etc.), the yellow LED turns solid to indicate wipe is about the start. When the Linux kernel starts, the kernel LED driver takes over and starts blinking in heartbeat pattern. Because it takes a while to load the kernel, the LED stays solid for 2-3 seconds, which should be enough to recognize it was acknowledged. * Wait for button to be released before wiping
- Loading branch information
Showing
4 changed files
with
86 additions
and
1 deletion.
There are no files selected for viewing
52 changes: 52 additions & 0 deletions
52
...d/nabucasa/green/patches/uboot/0010-arch-arm64-dts-green-Improve-LED-representation.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
From d3fb1ec2364b20025d71e2263514a71208cfb61e Mon Sep 17 00:00:00 2001 | ||
From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= <[email protected]> | ||
Date: Tue, 13 Aug 2024 17:51:29 +0200 | ||
Subject: [PATCH] arch: arm64: dts: green: Improve LED representation | ||
MIME-Version: 1.0 | ||
Content-Type: text/plain; charset=UTF-8 | ||
Content-Transfer-Encoding: 8bit | ||
|
||
Fix color and use labels/node names according to the LEDs functionality. | ||
|
||
Signed-off-by: Jan Čermák <[email protected]> | ||
Co-authored-by: Stefan Agner <[email protected]> | ||
--- | ||
arch/arm/dts/rk3566-ha-green.dts | 11 +++++++---- | ||
1 file changed, 7 insertions(+), 4 deletions(-) | ||
|
||
diff --git a/arch/arm/dts/rk3566-ha-green.dts b/arch/arm/dts/rk3566-ha-green.dts | ||
index 68d836911e..c3adc59904 100644 | ||
--- a/arch/arm/dts/rk3566-ha-green.dts | ||
+++ b/arch/arm/dts/rk3566-ha-green.dts | ||
@@ -48,16 +48,18 @@ | ||
leds { | ||
compatible = "gpio-leds"; | ||
|
||
- led_power: led-0 { | ||
+ led_power: led-power { | ||
+ label = "power"; | ||
gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>; | ||
function = LED_FUNCTION_POWER; | ||
- color = <LED_COLOR_ID_RED>; | ||
+ color = <LED_COLOR_ID_WHITE>; | ||
default-state = "keep"; | ||
linux,default-trigger = "default-on"; | ||
pinctrl-names = "default"; | ||
pinctrl-0 = <&led_power_pin>; | ||
}; | ||
- led_act: led-1 { | ||
+ led_act: led-activity { | ||
+ label = "activity"; | ||
gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>; | ||
function = LED_FUNCTION_ACTIVITY; | ||
color = <LED_COLOR_ID_GREEN>; | ||
@@ -65,7 +67,8 @@ | ||
pinctrl-names = "default"; | ||
pinctrl-0 = <&led_act_pin>; | ||
}; | ||
- led_user: led-2 { | ||
+ led_user: led-user { | ||
+ label = "user"; | ||
gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>; | ||
function = LED_FUNCTION_HEARTBEAT; | ||
color = <LED_COLOR_ID_YELLOW>; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
CONFIG_LED=y | ||
CONFIG_LED_GPIO=y | ||
CONFIG_CMD_LED=y |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters