Hi Siarhei, On 5 February 2015 at 02:36, Siarhei Siamashka <[email protected]> wrote: > !!! Works only on Allwinner A20 so far and needs a bit more > !!! debugging. And even on A20, the transition from the SPL to > !!! the main U-boot binary has some glitches. > > Now it should be possible to load and execute the same U-Boot SPL, > as used for booting from SD cards. The only argument for this new > command is the name of the SPL binary file (with eGON header). > It can be run as: > > fel spl u-boot-sunxi-with-spl.bin
This looks great! Does it write only the SPL portion or does it write U-Boot also? I don't really understand how it works but will leave that to you and Hans. > > The free space in SRAM is scattered in the FEL mode across multiple > locations. We just split SPL into individual chunks, upload them > to the free locations in SRAM and also upload a small startup code, > which is responsible for harvesting and gluing the pieces of SPL > together. Additionally, the eGON checksum is verified to ensure > that no data corruption has happened due to some unexpected clash > with the FEL protocol code from the BROM. > > After this is done, it is not possible to return back to FEL anymore > (both IRQ and normal stacks of the BROM are overwritten). However > it is still possible to transfer control to the FEL init code (so > that it re-initializes the USB hardware and all the other things): > > /* Jump to the FEL entry point in BROM */ > movw r0, #0x20 > movt r0, #0xffff > bx r0 > > This unifies the FEL and SD card SPL binaries. And also removes > the FEL SPL size limit (now it can be as large as ~30 KiB). > > This work had been inspired by the recent FEL mode support > u-boot patches from Simon Glass and Hans de Goede. > > Signed-off-by: Siarhei Siamashka <[email protected]> [snip] Regards, Simon -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
