I'm working to get iMX6 HAB to boot a signed U-Boot binary. The complication I have is that my SOM vendor has their own branch of U-Boot source, and they have their own assembler source and linker script which creates the IVT and CSF data in the binary image - they don't use the 'imximage' generation of U-Boot's mkimage tool. Therefore, when I follow the HAB docs for creating the .csf file, I don't have the "HAB Blocks =" info [outputted by mkimage] to use in the .csf file (for the 'Blocks = ' line).
Therefore I'm aiming to extract the values from the .bin file, e.g. using readelf/objdump etc. But I'm struggling to figure out what I need to extract from the .bin
Could anyone give me some pointers on how to calculate the 'Blocks =' values?
Or, even, be willing to send me their U-Boot .bin file and the corresponding .csf file - so that I can sanity-check my own reasoning?
Thanks!
Hello,
Below are example and comments.
Padded u-boot should be signed starting at the IVT through to the end with
length = 0x71000 (padded u-boot length) - 0x400 (IVT offset) = 0x70C00
This covers the essential parts: IVT, boot data and DCD.
Blocks have the following definition:
Image block start address on i.MX, Offset from start of image file,
Length of block in bytes, image data file
[Authenticate Data]
Verification index = 2
Blocks = 0x27800400 0x400 0x70C00 "u-boot-pad.bin"
You may create request / ticket to get U-boot with .csf files (as example).
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------