[brcm63xx] bcm63xx MTD driver cleanup and fixes:
[openwrt/svn-archive/archive.git] / target / linux / brcm63xx / files / include / asm-mips / mach-bcm63xx / bcm_tag.h
1 #ifndef __BCM63XX_TAG_H
2 #define __BCM63XX_TAG_H
3
4 #define IMAGE_LEN 10 /* Length of Length Field */
5 #define ADDRESS_LEN 12 /* Length of Address field */
6
7 struct bcm_tag {
8 unsigned char tagVersion[4]; // Version of the image tag
9 unsigned char sig_1[20]; // Company Line 1
10 unsigned char sig_2[14]; // Company Line 2
11 unsigned char chipid[6]; // Chip this image is for
12 unsigned char boardid[16]; // Board name
13 unsigned char big_endian[2]; // Map endianness -- 1 BE 0 LE
14 unsigned char totalLength[IMAGE_LEN]; //Total length of image
15 unsigned char cfeAddress[ADDRESS_LEN]; // Address in memory of CFE
16 unsigned char cfeLength[IMAGE_LEN]; // Size of CFE
17 unsigned char rootAddress[ADDRESS_LEN]; // Address in memory of rootfs
18 unsigned char rootLength[IMAGE_LEN]; // Size of rootfs
19 unsigned char kernelAddress[ADDRESS_LEN]; // Address in memory of kernel
20 unsigned char kernelLength[IMAGE_LEN]; // Size of kernel
21 unsigned char dualImage[2]; // Unused at present
22 unsigned char inactiveFlag[2]; // Unused at present
23 unsigned char reserved1[74]; // Reserved area not in use
24 unsigned char imageCRC[4]; // CRC32 of images
25 unsigned char reserved2[16]; // Unused at present
26 unsigned char headerCRC[4]; // CRC32 of header excluding tagVersion
27 unsigned char reserved3[16]; // Unused at present
28 };
29
30 #endif /* __BCM63XX_TAG_H */