From 98904f56e214014ce2b193d9362703b61d75825d Mon Sep 17 00:00:00 2001
From: Rahix <rahix@rahix.de>
Date: Thu, 4 Jul 2019 19:17:20 +0200
Subject: [PATCH] feat: Print a string before resetting

Signed-off-by: Rahix <rahix@rahix.de>
---
 bootloader/main.c | 8 ++++++++
 epicardium/main.c | 8 ++++++++
 2 files changed, 16 insertions(+)

diff --git a/bootloader/main.c b/bootloader/main.c
index be50bb16..2c7a9e36 100644
--- a/bootloader/main.c
+++ b/bootloader/main.c
@@ -179,6 +179,14 @@ static inline void boot(const void * vtable){
 static void pmic_button(bool falling)
 {
 	if (falling) {
+		printf("Resetting ...\n");
+		/*
+		 * Give the UART fifo time to clear.
+		 * TODO: Do this properly
+		 */
+		for (int i = 0; i < 0x1000000; i++) {
+			__asm volatile("nop");
+		}
 		MXC_GCR->rstr0 = MXC_F_GCR_RSTR0_SYSTEM;
 	}
 }
diff --git a/epicardium/main.c b/epicardium/main.c
index b2bd12e5..f472e6b3 100644
--- a/epicardium/main.c
+++ b/epicardium/main.c
@@ -40,6 +40,14 @@ void vApiDispatcher(void*pvParameters)
 static void pmic_button(bool falling)
 {
 	if (falling) {
+		printf("Resetting ...\n");
+		/*
+		 * Give the UART fifo time to clear.
+		 * TODO: Do this properly
+		 */
+		for (int i = 0; i < 0x1000000; i++) {
+			__asm volatile("nop");
+		}
 		MXC_GCR->rstr0 = MXC_F_GCR_RSTR0_SYSTEM;
 	}
 }
-- 
GitLab