[coreboot] Patch set updated for coreboot: 376eec4 Arm architecture support in cbfs.
Ronald G. Minnich (rminnich@gmail.com)
gerrit at coreboot.org
Tue Nov 27 01:22:09 CET 2012
Ronald G. Minnich (rminnich at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1917
-gerrit
commit 376eec4e40cdd7101b6008de49b31eb9cd9d1382
Author: Ronald G. Minnich <rminnich at gmail.com>
Date: Mon Nov 26 16:12:38 2012 -0800
Arm architecture support in cbfs.
Signed-off-by: David Hendricks <dhendrix at chromium.org>
Signed-off-by: Hung-Te Lin <hungte at chromium.org>
Signed-off-by: Stefan Reinauer <stepan at coresystems.de>
Change-Id: I7fed081d71c24cf58d59513377224c95cf74779e
Signed-off-by: Ronald G. Minnich <rminnich at gmail.com>
---
src/include/cbfs_core.h | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/src/include/cbfs_core.h b/src/include/cbfs_core.h
index 43e6b9b..6fb4e04 100644
--- a/src/include/cbfs_core.h
+++ b/src/include/cbfs_core.h
@@ -78,13 +78,19 @@
/** this is the master cbfs header - it need to be
located somewhere in the bootblock. Where it
- actually lives is up to coreboot. A pointer to
- this header will live at 0xFFFFFFFc, so we can
- easily find it. */
+ actually lives is up to coreboot. On x86, a
+ pointer to this header will live at 0xFFFFFFFc,
+ so we can easily find it. */
#define CBFS_HEADER_MAGIC 0x4F524243
+#if CONFIG_ARCH_X86
#define CBFS_HEADPTR_ADDR 0xFFFFFFFc
+#elif CONFIG_ARCH_ARM
+#define CBFS_HEADPTR_ADDR 0x0000000c
+#endif
#define VERSION1 0x31313131
+#define VERSION2 0x31313132
+#define VERSION VERSION2
struct cbfs_header {
uint32_t magic;
@@ -93,9 +99,15 @@ struct cbfs_header {
uint32_t bootblocksize;
uint32_t align;
uint32_t offset;
- uint32_t pad[2];
+ uint32_t architecture;
+ uint32_t pad[1];
} __attribute__((packed));
+// "Legacy" refers to cbfs headers before architecture is defined (i.e., X86).
+#define CBFS_ARCHITECTURE_LEGACY 0xFFFFFFFF
+#define CBFS_ARCHITECTURE_ARM 0x10
+#define CBFS_ARCHITECTURE_X86 0x20
+
/** This is a component header - every entry in the CBFS
will have this header.
@@ -180,4 +192,3 @@ void *cbfs_find_file(const char *name, int type);
int cbfs_decompress(int algo, void *src, void *dst, int len);
struct cbfs_header *get_cbfs_header(void);
#endif
-
More information about the coreboot
mailing list