From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michal Simek Date: Tue, 15 Jan 2019 14:19:25 +0100 Subject: [U-Boot] [PATCH 1/3] tools: zynqimage: Align image_size/image_stored_size Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Bootrom is not capable to work with non aligned bootloader sizes. SPL with OF_SEPARATE generates non-align images quite often that's why this change is required before OF_SEPARATE enableding. Signed-off-by: Michal Simek --- tools/zynqmpbif.c | 4 ++-- tools/zynqmpimage.c | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/zynqmpbif.c b/tools/zynqmpbif.c index a33c15e1f018..8c47107c7b94 100644 --- a/tools/zynqmpbif.c +++ b/tools/zynqmpbif.c @@ -425,8 +425,8 @@ static int bif_add_part(struct bif_entry *bf, const char *data, size_t len) if (!bif_output.header->image_offset) bif_output.header->image_offset = cpu_to_le32(bf->offset); - bif_output.header->image_size = cpu_to_le32(len); - bif_output.header->image_stored_size = cpu_to_le32(len); + bif_output.header->image_size = cpu_to_le32(len_padded); + bif_output.header->image_stored_size = cpu_to_le32(len_padded); bif_output.header->image_attributes &= ~HEADER_CPU_SELECT_MASK; switch (bf->dest_cpu) { diff --git a/tools/zynqmpimage.c b/tools/zynqmpimage.c index 19b2f02ff150..67032aa7b23c 100644 --- a/tools/zynqmpimage.c +++ b/tools/zynqmpimage.c @@ -411,6 +411,7 @@ static void zynqmpimage_set_header(void *ptr, struct stat *sbuf, int ifd, cpu_to_le32((uint32_t)sizeof(struct zynqmp_header)); zynqhdr->image_size = cpu_to_le32(params->file_size - sizeof(struct zynqmp_header)); + zynqhdr->image_size = ROUND(zynqhdr->image_size, 4); zynqhdr->image_stored_size = zynqhdr->image_size; zynqhdr->image_load = 0xfffc0000; if (params->eflag) -- 1.9.1