
Dear Simon Schwarz,
In message BANLkTinCM+qWU_D50LJgf6Am=7GgoErh4g@mail.gmail.com you wrote:
- we should define a struct, which contains the 3 values
offset, size, destination, so we can create a "nand_load_list" which can contain n entries, that could be processed in a while loop ... so no need for the CONFIG_SYS_BOOT_LINUX define ;-)
I would also add some kind of CRC to check the integrity of the image?
If you add this, then please make sure to make it optional. Keep in mind that there are systems where the SPL code has to be really small (like 4 or even 2 KiB).
Another question is if we not just use the uImage format provided by mkImage. This IMHO should include all this (except the offset) but then we have to read the first NAND-page (or what ever medium) to get these values which presumably means a significant slow-down. But then we can update the image without updating u-boot what i would consider important for non-dev devices.
Reading an uImage and just skipping the 64 byte image header is definitely an option.
Please keep the design simple - adding bells and whistles can be done later, if there is room and time for it.
Best regards,
Wolfgang Denk