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/mtd | |
| 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/mtd')
| -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)); | 
