[U-Boot,2/2] ARM: rmobile: Ignore U-Boot env when started via JTAG on Porter

Message ID 20180417005940.12189-2-marek.vasut+renesas@gmail.com
State New
Delegated to: Marek Vasut
Headers show
Series
  • [U-Boot,1/2] ARM: rmobile: Ignore U-Boot env when started via JTAG on Stout
Related show

Commit Message

Marek Vasut April 17, 2018, 12:59 a.m.
When U-Boot is started via JTAG, ignore the installed environment
as it may interfere with the recovery of the board.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
---
 board/renesas/porter/porter.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

Patch

diff --git a/board/renesas/porter/porter.c b/board/renesas/porter/porter.c
index acd4f91d59..eb66bc903e 100644
--- a/board/renesas/porter/porter.c
+++ b/board/renesas/porter/porter.c
@@ -11,6 +11,7 @@ 
 #include <malloc.h>
 #include <dm.h>
 #include <dm/platform_data/serial_sh.h>
+#include <environment.h>
 #include <asm/processor.h>
 #include <asm/mach-types.h>
 #include <asm/io.h>
@@ -136,3 +137,18 @@  void reset_cpu(ulong addr)
 	if (ret)
 		hang();
 }
+
+enum env_location env_get_location(enum env_operation op, int prio)
+{
+	const u32 load_magic = 0xb33fc0de;
+
+	/* Block environment access if loaded using JTAG */
+	if ((readl(CONFIG_SPL_TEXT_BASE + 0x24) == load_magic) &&
+	    (op != ENVOP_INIT))
+		return ENVL_UNKNOWN;
+
+	if (prio)
+		return ENVL_UNKNOWN;
+
+	return ENVL_SPI_FLASH;
+}