diff options
Diffstat (limited to 'doc/usage/fit/multi_spl.rst')
-rw-r--r-- | doc/usage/fit/multi_spl.rst | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/doc/usage/fit/multi_spl.rst b/doc/usage/fit/multi_spl.rst new file mode 100644 index 00000000000..74b6f865abd --- /dev/null +++ b/doc/usage/fit/multi_spl.rst @@ -0,0 +1,101 @@ +.. SPDX-License-Identifier: GPL-2.0+ + +Multiple images for SPL +======================= + +(Bogus) example FIT image description file demonstrating the usage +of multiple images loaded by the SPL. +Several binaries will be loaded at their respective load addresses. + +For booting U-Boot, "firmware" is searched first. If not found, "loadables" +is used to identify images to be loaded into memory. If falcon boot is +enabled, "kernel" is searched first. If not found, it falls back to the +same flow as booting U-Boot. Changing image type will result skipping +specific image. + +Finally the one image specifying an entry point will be entered by the SPL. + +:: + + /dts-v1/; + + / { + description = "multiple firmware blobs and U-Boot, loaded by SPL"; + #address-cells = <0x1>; + + images { + + uboot { + description = "U-Boot (64-bit)"; + type = "standalone"; + arch = "arm64"; + compression = "none"; + load = <0x4a000000>; + }; + + atf { + description = "ARM Trusted Firmware"; + type = "firmware"; + arch = "arm64"; + compression = "none"; + load = <0x18000>; + entry = <0x18000>; + }; + + mgmt-firmware { + description = "arisc management processor firmware"; + type = "firmware"; + arch = "or1k"; + compression = "none"; + load = <0x40000>; + }; + + fdt-1 { + description = "Pine64+ DT"; + type = "flat_dt"; + compression = "none"; + load = <0x4fa00000>; + arch = "arm64"; + }; + + fdt-2 { + description = "Pine64 DT"; + type = "flat_dt"; + compression = "none"; + load = <0x4fa00000>; + arch = "arm64"; + }; + + kernel { + description = "4.7-rc5 kernel"; + type = "kernel"; + compression = "none"; + load = <0x40080000>; + arch = "arm64"; + }; + + initrd { + description = "Debian installer initrd"; + type = "ramdisk"; + compression = "none"; + load = <0x4fe00000>; + arch = "arm64"; + }; + }; + + configurations { + default = "config-1"; + + config-1 { + description = "sun50i-a64-pine64-plus"; + loadables = "uboot", "atf", "kernel", "initrd"; + fdt = "fdt-1"; + }; + + config-2 { + description = "sun50i-a64-pine64"; + loadables = "uboot", "atf", "mgmt-firmware"; + fdt = "fdt-2"; + }; + }; + }; |