Valid Boot Images
Valid boot images whether POST, USER, or MCG, are located on 1MB boundaries within flash.
The image may exceed 1MB in size. An image is determined valid through the presence of two
"valid image keys" and other sanity checks. A valid boot image begins with a structure as
defined in the following table:
Name
UserDefined
ImageKey 1
ImageKey 2
ImageChecksum
ImageSize
ImageName
ImageRamAddress
ImageOffset
ImageFlags
ImageVersion
Reserved
Checksum Algorithm
The checksum algorithm is a simple unsigned word add of each word (4 byte) location in the
image. The image must be a multiple of 4 bytes in length (word-aligned). The content of the
checksum location in the header is not part of the checksum calculation. The calculation
assumes the location to be zero. The algorithm is implemented using the following code:
Unsigned int checksum(
Unsigned int *startPtr,/* starting address */
Unsigned int endPtr/* ending address */
) {
unsigned int checksum=0;
while (startPtr < endPtr) {
checksum += *startPtr;
startPtr++;
}
return(checksum);
}
Type
Size
unsigned integer
8
unsigned integer
1
unsigned integer
1
unsigned integer
1
unsigned integer
1
unsigned character
32
unsigned integer
1
unsigned integer
1
unsigned integer
1
unsigned integer
1
unsigned integer
8
MVME6100 Installation and Use (V6100A/IH2)
Chapter 3 MOTLoad Firmware
Notes
User defined
0x414c5420
0x424f4f54
Image checksum
Must be a multiple of 4
User defined
RAM address
Offset from header start to entry
Refer to
MOTLoad Image Flags on page 32
User defined
Reserved for expansion
31