diff mbox

[U-Boot,22/27] kc1: Boot to bootloader (fastboot) on ID pin pull-up

Message ID 1456597155-10711-23-git-send-email-contact@paulk.fr
State Accepted
Commit bd55eedc07a7f3811cbbd4e934081b9a915af758
Delegated to: Tom Rini
Headers show

Commit Message

Paul Kocialkowski Feb. 27, 2016, 6:19 p.m. UTC
USB ID pin pull-up indicates factory (fastboot) cable detection.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
---
 board/amazon/kc1/kc1.c | 9 +++++++++
 1 file changed, 9 insertions(+)

Comments

Tom Rini March 17, 2016, 1:59 a.m. UTC | #1
On Sat, Feb 27, 2016 at 07:19:10PM +0100, Paul Kocialkowski wrote:

> USB ID pin pull-up indicates factory (fastboot) cable detection.
> 
> Signed-off-by: Paul Kocialkowski <contact@paulk.fr>

Applied to u-boot/master, thanks!
diff mbox

Patch

diff --git a/board/amazon/kc1/kc1.c b/board/amazon/kc1/kc1.c
index d526695..9367b50 100644
--- a/board/amazon/kc1/kc1.c
+++ b/board/amazon/kc1/kc1.c
@@ -86,11 +86,20 @@  int board_init(void)
 int misc_init_r(void)
 {
 	char reboot_mode[2] = { 0 };
+	u32 value;
 
 	/* Reboot mode */
 
 	omap_reboot_mode(reboot_mode, sizeof(reboot_mode));
 
+	/* USB ID pin pull-up indicates factory (fastboot) cable detection. */
+	gpio_request(KC1_GPIO_USB_ID, "USB_ID");
+	gpio_direction_input(KC1_GPIO_USB_ID);
+	value = gpio_get_value(KC1_GPIO_USB_ID);
+
+	if (value)
+		reboot_mode[0] = 'b';
+
 	if (reboot_mode[0] > 0 && isascii(reboot_mode[0])) {
 		if (!getenv("reboot-mode"))
 			setenv("reboot-mode", (char *)reboot_mode);