SPL: FIT: allow loading multiple images
authorAndre Przywara <andre.przywara@arm.com>
Wed, 26 Apr 2017 00:32:37 +0000 (01:32 +0100)
committerJason Liu <jason.hui.liu@nxp.com>
Thu, 2 Nov 2017 18:37:22 +0000 (02:37 +0800)
commitb137217acded29946b880ddc7a44f3c8b68c007f
tree8a7e1b08419d40a22b63e82f86ddcbf0d2770d0b
parentecd4247ca1a979903a6f7a7e66fbb8ad681b7d68
SPL: FIT: allow loading multiple images

So far we were not using the FIT image format to its full potential:
The SPL FIT loader was just loading the first image from the /images
node plus one of the listed DTBs.
Now with the refactored loader code it's easy to load an arbitrary
number of images in addition to the two mentioned above.
As described in the FIT image source file format description, iterate
over all images listed at the "loadables" property in the configuration
node and load every image at its desired location.
This allows to load any kind of images:
- firmware images to execute before U-Boot proper (for instance
  ARM Trusted Firmware (ATF))
- firmware images for management processors (SCP, arisc, ...)
- firmware images for devices like WiFi controllers
- bit files for FPGAs
- additional configuration data
- kernels and/or ramdisks
The actual usage of this feature would be platform and/or board specific.

Also update the FIT documentation to mention the new SPL feature and
provide an example .its file to demonstrate its features.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Lokesh Vutla <lokeshvuta@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
Tested-by: Kever Yang <kever.yang@rock-chips.com>
Tested-by: Jagan Teki <jagan@openedev.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
(cherry picked from commit 411cf32d200aeca0754ce7083c51391af84cf612)
common/spl/spl_fit.c
doc/uImage.FIT/howto.txt
doc/uImage.FIT/multi_spl.its [new file with mode: 0644]