[PATCH 1/2] BBB: Build a uMon image with a Configuration header and a GP header prepended.
Jarielle Catbagan
jcatbagan93 at gmail.com
Wed Jul 8 21:28:41 UTC 2015
---
ports/beagleboneblack/Makefile | 9 ++++++-
ports/beagleboneblack/config_header.S | 46 +++++++++++++++++++++++++++++++++++
2 files changed, 54 insertions(+), 1 deletion(-)
create mode 100644 ports/beagleboneblack/config_header.S
diff --git a/ports/beagleboneblack/Makefile b/ports/beagleboneblack/Makefile
index db285bd..c66ee62 100644
--- a/ports/beagleboneblack/Makefile
+++ b/ports/beagleboneblack/Makefile
@@ -86,12 +86,19 @@ boot: $(BUILDDIR)/boot.$(FILETYPE)
$(CC) $(ASMFLAGS) -D \
BIN_SIZE=$(shell wc --bytes build_$(PLATFORM)/boot.bin | cut -f 1 -d ' ') \
-o gp_header.o gp_header.S
+ ${CC} ${ASMFLAGS} -o config_header.o config_header.S
$(OBJCOPY) -O binary gp_header.o build_$(PLATFORM)/gp_header.bin
+ ${OBJCOPY} -O binary config_header.o build_${PLATFORM}/config_header.bin
@cat build_$(PLATFORM)/gp_header.bin build_$(PLATFORM)/boot.bin > build_$(PLATFORM)/MLO
+ @cat build_$(PLATFORM)/config_header.bin build_$(PLATFORM)/gp_header.bin \
+ build_$(PLATFORM)/boot.bin > build_$(PLATFORM)/rawboot.bin
@echo Boot version of uMon built under $(BUILDDIR) ...
@ls $(BUILDDIR)/boot*
- @echo Boot version of uMon attached with GP header build under $(BUILDDIR) ...
+ @echo Boot version of uMon prepended with a GP header built under $(BUILDDIR) ...
@ls $(BUILDDIR)/MLO
+ @echo Boot version of uMon prepended with a Configuration header and a GP header built
+ @echo under $(BUILDDIR) ...
+ @ls $(BUILDDIR)/rawboot.bin
# ramtst:
# A shortcut to $(BUILDDIR)/ramtst.$(FILETYPE). This is a version of uMon
diff --git a/ports/beagleboneblack/config_header.S b/ports/beagleboneblack/config_header.S
new file mode 100644
index 0000000..dbf6ff0
--- /dev/null
+++ b/ports/beagleboneblack/config_header.S
@@ -0,0 +1,46 @@
+ .file "config_header.S"
+
+/* This is the Configuration Header TOC Structure that must be prepended to a GP Header followed
+ * by the uMon image in order to boot from non-XIP devices such as an SD card using "raw" mode.
+ * Please refer to the AM335x TRM, Section 26.1.7.5.5.1 "Configuration Header" for more information.
+ */
+
+ /* Start */
+ .word 0x000000a0
+ /* Size */
+ .word 0x00000050
+ /* Reserved */
+ .word 0x00000000
+ .word 0x00000000
+ .word 0x00000000
+ /* Filename */
+ .word 0x45534843
+ .word 0x4e495454
+ .word 0x00005347
+ /* Closing Item */
+ .word 0xffffffff
+ .word 0xffffffff
+ .word 0xffffffff
+ .word 0xffffffff
+ .word 0xffffffff
+ .word 0xffffffff
+ .word 0xffffffff
+ .word 0xffffffff
+
+ /* Gap between Configuration Header TOC Structure and Configuration Header Settings */
+ .rept 24
+ .word 0x00000000
+ .endr
+
+ /* Section Key */
+ .word 0xc0c0c0c1
+ /* Valid */
+ .byte 0x00
+ /* Version */
+ .byte 0x01
+ /* Reserved */
+ .rept 86
+ .word 0x00000000
+ .endr
+ .byte 0x00
+ .byte 0x00
--
2.3.4
More information about the umon-devel
mailing list