From d0faa8cfaeb5b1ff86906f17e978fa90c8f0853c Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Wed, 16 Apr 2014 15:18:34 +0200 Subject: tools: make imxheader size align on page size The i.MX V2 headers total size is 0x7fc. The header is placed in front of the U-Boot binary which of course is aligned to text base. Hence the header starting point is not page aligned (e.g. at 0x3f400404). This is still a valid header, which boots fine using serial loader. However, the image fails to boot from NAND (tested on a VF61x SoC). Most parts of the header have a length of a multiply of 16 bytes.The rest of the header is filled with 8 bytes long DCD data. Only the boot data header is 3 word long (12 bytes). This patch makes sure the whole image is exactly 0x800 by adding one padding word after the boot data header. Since the individual data structures are referenced by pointers, this still results in a valid i.MX V2 header while maintaining page alignment. --- tools/imximage.h | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/imximage.h b/tools/imximage.h index 5b5ad0edf4..584126089e 100644 --- a/tools/imximage.h +++ b/tools/imximage.h @@ -149,6 +149,7 @@ typedef struct { typedef struct { flash_header_v2_t fhdr; boot_data_t boot_data; + uint32_t reserved1; dcd_v2_t dcd_table; } imx_header_v2_t; -- cgit v1.2.3