
Hi Lukasz
One question:
Would it be possible to develop SPL (MLO) for your platform, which does following things:
- Loads the full-fledge u-boot to SDRAM 2. Starts the u-boot and 3.
u-boot flash all the needed stuff
By using such approach we could restrict our dfu support in SPL u-boot only to receiving data and uploading it to SDRAM (i.e. we wouldn't need to add write support for ext, fat and eMMC).
This is not possible, because combining MLO and u-boot.img will not fit in IRAM (512k). The u-boot.img itself is around 640K.
My point here is to first load SPL u-boot (which size is around 110 KiB), and then download via DFU full-featured u-boot, which would be placed in SDRAM.
Yes this is good idea, so the SPL-DFU will have only RAM device support (to load u-boot into DDR). But we don't have DFU command to jump to u-boot after loading u-boot into DDR. The DFU basically just download firmware to memory devices like mmc/sd/eMMC/RAM. So the question is how to transfer control to u-boot after downloading the u-boot to DDR using SPL-DFU/RAM.
Then u-boot downloads and flash all needed images. One big advantage is that our SPL DFU support can be minimal - we don't need to implement fat, ext ,emmc write support.
Yes, I agree, if we could workaround above bottle neck.
Regards Ravi