diff options
author | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2009-07-26 16:40:04 +0300 |
---|---|---|
committer | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2009-07-26 16:40:04 +0300 |
commit | 8b3cdd8105452737eba043c2e83cbfd8454223e1 (patch) | |
tree | a0c2b04674b5c4b46c6cf6eab0728dadfbc68715 /include | |
parent | e34c0810a80744bcece8b6a4947f70786cdcb005 (diff) |
ubi-utils: update ubi-media.h
Update the ubi-media.h file in order to add UBI sequence number
support.
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/mtd/ubi-media.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/include/mtd/ubi-media.h b/include/mtd/ubi-media.h index 007f941..08bec3e 100644 --- a/include/mtd/ubi-media.h +++ b/include/mtd/ubi-media.h @@ -129,6 +129,7 @@ enum { * @ec: the erase counter * @vid_hdr_offset: where the VID header starts * @data_offset: where the user data start + * @image_seq: image sequence number * @padding2: reserved for future, zeroes * @hdr_crc: erase counter header CRC checksum * @@ -144,6 +145,14 @@ enum { * volume identifier header and user data, relative to the beginning of the * physical eraseblock. These values have to be the same for all physical * eraseblocks. + * + * The @image_seq field is used to validate a UBI image that has been prepared + * for a UBI device. The @image_seq value can be any value, but it must be the + * same on all eraseblocks. UBI will ensure that all new erase counter headers + * also contain this value, and will check the value when scanning at start-up. + * One way to make use of @image_seq is to increase its value by one every time + * an image is flashed over an existing image, then, if the flashing does not + * complete, UBI will detect the error when scanning. */ struct ubi_ec_hdr { __be32 magic; @@ -152,7 +161,8 @@ struct ubi_ec_hdr { __be64 ec; /* Warning: the current limit is 31-bit anyway! */ __be32 vid_hdr_offset; __be32 data_offset; - __u8 padding2[36]; + __be32 image_seq; + __u8 padding2[32]; __be32 hdr_crc; } __attribute__ ((packed)); |