[U-Boot] [PATCH] imximage: header v2: Remove overwriting of flash_offset

Stefano Babic
2012-02-21T17:57:03Z

On 21/02/2012 10:02, Dirk Behme wrote:
> The flash header v2 supports different flash offsets for different
> boot devices. E.g. parallel NOR or OneNAND use a different offset
> than FLASH_OFFSET_STANDARD (== 0x400).
>
> The flash offset is correctly read from the configuration in
> parse_cfg_cmd(). But is then overwritten wrongly in set_imx_hdr_v2().
>
> Fix this by removing this overwriting. Use the flash offset
> correclty read from the configuration, instead.
>
> Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com>
> CC: Jason Liu <liu.h.jason@gmail.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---

Hi Dirk,

> tools/imximage.c | 3 ---
> 1 files changed, 0 insertions(+), 3 deletions(-)
>
> diff --git a/tools/imximage.c b/tools/imximage.c
> index 1e0f5d4..e9947f1 100644
> --- a/tools/imximage.c
> +++ b/tools/imximage.c
> @@ -253,9 +253,6 @@ static void set_imx_hdr_v2(struct imx_header *imxhdr, uint32_t dcd_len,
> imx_header_v2_t *hdr_v2 = &imxhdr->header.hdr_v2;
> flash_header_v2_t *fhdr_v2 = &hdr_v2->fhdr;
>
> - /* Set default offset */
> - imxhdr->flash_offset = FLASH_OFFSET_STANDARD;
> -
> /* Set magic number */
> fhdr_v2->header.tag = IVT_HEADER_TAG; /* 0xD1 */
> fhdr_v2->header.length = cpu_to_be16(sizeof(flash_header_v2_t));

I think we have then a problem when there is not a BOOT_FROM statement
in the configuration file, that let imxhdr->flash_offset unset.

We need to set it with the default value at the beginning of the
processing or to raise an error if we want to make this statement
mandatory in the configuration file.

Best regards,
Stefano Babic