beautypg.com

10 boot images, 1 checksum algorithm, Motload firmware – Artesyn MVME6100 Single Board Computer Installation and Use (June 2014) User Manual

Page 56

background image

MOTLoad Firmware

MVME6100 Single Board Computer Installation and Use (6806800D58H)

56

3.10 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:

3.10.1 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;

Name

Type

Size

Notes

UserDefined

unsigned integer

8

User defined

ImageKey 1

unsigned integer

1

0x414c5420

ImageKey 2

unsigned integer

1

0x424f4f54

ImageChecksum

unsigned integer

1

Image checksum

ImageSize

unsigned integer

1

Must be a multiple of 4

ImageName

unsigned character

32

User defined

ImageRamAddress

unsigned integer

1

RAM address

ImageOffset

unsigned integer

1

Offset from header start to entry

ImageFlags

unsigned integer

1

Refer to

Image Flags

on page 57

ImageVersion

unsigned integer

1

User defined

Reserved

unsigned integer

8

Reserved for expansion