[U-Boot] [PATCH 2/2] vexpress64: juno: add default NOR flash boot

Linus Walleij linus.walleij at linaro.org
Thu Feb 19 17:19:54 CET 2015


This modifies the vexpress64 Juno configuration so that
it will by default load and boot a kernel and a device tree
from the pre-defined location in the NOR flash. When we are
at it, also define the proper command line for the Juno and
indicate that the USB stick (/dev/sda1) is the default
root file system.

Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
---
 include/configs/vexpress_aemv8a.h | 33 ++++++++++++++++++++++++++++++++-
 1 file changed, 32 insertions(+), 1 deletion(-)

diff --git a/include/configs/vexpress_aemv8a.h b/include/configs/vexpress_aemv8a.h
index bcfcb63d81d8..7a6ac9bb9b3a 100644
--- a/include/configs/vexpress_aemv8a.h
+++ b/include/configs/vexpress_aemv8a.h
@@ -190,7 +190,38 @@
 #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
 
 /* Initial environment variables */
-#ifdef CONFIG_TARGET_VEXPRESS64_BASE_FVP
+#ifdef CONFIG_TARGET_VEXPRESS64_JUNO
+/*
+ * Defines where the kernel and FDT exist in NOR flash and where it will
+ * be copied into DRAM
+ */
+#define CONFIG_EXTRA_ENV_SETTINGS	\
+				"kernel_name=Image\0"	\
+				"kernel_addr=0x8500000\0" \
+				"kernel_addr_r=0x80000000\0" \
+				"max_kernel=0xa00000\0" \
+				"fdt_name=juno.dtb\0" \
+				"fdt_addr=0x8f00000\0" \
+				"fdt_addr_r=0x83000000\0" \
+				"max_fdt=0x100000\0" \
+				"fdt_high=0xffffffffffffffff\0" \
+				"initrd_high=0xffffffffffffffff\0" \
+
+/* Assume we boot with root on the first partition of a USB stick */
+#define CONFIG_BOOTARGS		"console=ttyAMA0,115200n8 " \
+				"root=/dev/sda1 rw " \
+				"earlyprintk=pl011,0x7ff80000 debug user_debug=31 "\
+				"loglevel=9"
+
+/* Copy the kernel and FDT to DRAM memory and boot */
+#define CONFIG_BOOTCOMMAND	"cp ${kernel_addr} ${kernel_addr_r} ${max_kernel} ; " \
+				"cp ${fdt_addr} ${fdt_addr_r} ${max_fdt}; " \
+				"fdt addr $fdt_addr_r; fdt resize; " \
+				"booti $kernel_addr_r - $fdt_addr_r"
+
+#define CONFIG_BOOTDELAY		1
+
+#elif CONFIG_TARGET_VEXPRESS64_BASE_FVP
 #define CONFIG_EXTRA_ENV_SETTINGS	\
 				"kernel_name=uImage\0"	\
 				"kernel_addr_r=0x80000000\0"	\
-- 
1.9.3



More information about the U-Boot mailing list