summaryrefslogtreecommitdiffstats
path: root/target/linux/brcm63xx/files/include/asm-mips/mach-bcm63xx/bcm_tag.h
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm63xx/files/include/asm-mips/mach-bcm63xx/bcm_tag.h')
-rw-r--r--target/linux/brcm63xx/files/include/asm-mips/mach-bcm63xx/bcm_tag.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/files/include/asm-mips/mach-bcm63xx/bcm_tag.h b/target/linux/brcm63xx/files/include/asm-mips/mach-bcm63xx/bcm_tag.h
new file mode 100644
index 000000000..efc4f02ba
--- /dev/null
+++ b/target/linux/brcm63xx/files/include/asm-mips/mach-bcm63xx/bcm_tag.h
@@ -0,0 +1,30 @@
+#ifndef __BCM63XX_TAG_H
+#define __BCM63XX_TAG_H
+
+#define IMAGE_LEN 10 /* Length of Length Field */
+#define ADDRESS_LEN 12 /* Length of Address field */
+
+struct bcm_tag {
+ unsigned char tagVersion[4]; // Version of the image tag
+ unsigned char sig_1[20]; // Company Line 1
+ unsigned char sig_2[14]; // Company Line 2
+ unsigned char chipid[6]; // Chip this image is for
+ unsigned char boardid[16]; // Board name
+ unsigned char big_endian[2]; // Map endianness -- 1 BE 0 LE
+ unsigned char totalLength[IMAGE_LEN]; //Total length of image
+ unsigned char cfeAddress[ADDRESS_LEN]; // Address in memory of CFE
+ unsigned char cfeLength[IMAGE_LEN]; // Size of CFE
+ unsigned char rootAddress[ADDRESS_LEN]; // Address in memory of rootfs
+ unsigned char rootLength[IMAGE_LEN]; // Size of rootfs
+ unsigned char kernelAddress[ADDRESS_LEN]; // Address in memory of kernel
+ unsigned char kernelLength[IMAGE_LEN]; // Size of kernel
+ unsigned char dualImage[2]; // Unused at present
+ unsigned char inactiveFlag[2]; // Unused at present
+ unsigned char reserved1[74]; // Reserved area not in use
+ unsigned char imageCRC[4]; // CRC32 of images
+ unsigned char reserved2[16]; // Unused at present
+ unsigned char headerCRC[4]; // CRC32 of header excluding tagVersion
+ unsigned char reserved3[16]; // Unused at present
+};
+
+#endif /* __BCM63XX_TAG_H */