Skip to content
  • Stefano Babic's avatar
    tools: dynamically allocate imx_header in imximage · 377e367a
    Stefano Babic authored
    
    
    Change to dynamically allocate the imx_header to correctly
    allocate the IVT, Boot Data and DCD at correct locations
    depending on the boot media.
    
    Also check that the Image Vector Table Offset + IVT +
    Boot Data + DCD <= Initial Load Region Size.
    
    Previously struct imx_header was always 4096 bytes and was
    not dealing correctly with the Image Vector Table Offset.
    
    Now, the memory allocation looks for e.g. SD boot like this
    
     Storage   u-boot.imx                             RAM
     Device
    
     00000000                                         177ff000 <--------------
                                                                             |
     00000400  00000000  d1 00 20 40 IVT.header       177ff400 <-------      |
     00000404  00000004  00 00 80 17 IVT.entry        177ff404 -----------   |
     00000408  00000008  00 00 00 00 IVT.reserved1    177ff408        |  |   |
     0000040C  0000000C  2c f4 7f 17 IVT.dcd          177ff40C ------ |  |   |
     00000410  00000010  20 f4 7f 17 IVT.boot         177ff410 ---- | |  |   |
     00000414  00000014  00 f4 7f 17 IVT.self         177ff414 --------  |   |
     00000418  00000018  00 00 00 00 IVT.csf          177ff418    | |    |   |
     0000041C  0000001C  00 00 00 00 IVT.reserved2    177ff41C    | |    |   |
     00000420  00000020  00 f0 7f 17 BootData.start   177ff420 <--- |    | ---
     00000424  00000024  00 60 03 00 BootData.length  177ff424      |    |
     00000428  00000028  00 00 00 00 BootData.plugin  177ff428      |    |
     0000042C  0000002C  d2 03 30 40 DCD.header       177ff42C <-----    |
     ...                                                                 |
     00001000  00000c00  13 00 00 ea U-Boot Start     17800000 <----------
    
    While at it also remove the unused #define HEADER_OFFSET.
    
    Signed-off-by: default avatarStefano Babic <sbabic@denx.de>
    377e367a