u-boot-brain/common
Lukas Auer b83edfbde9 spl: fit: use U-Boot device tree when FIT image has no device tree
As part of the SPL FIT boot flow, the device tree is appended to U-Boot
proper. The device tree is used to record information on the loadables
to make them available to the SPL framework and U-Boot proper. Depending
on the U-Boot device tree provider, the FIT image might not include a
device tree. Information on the loadables is missing in this case.

When booting via firmware bundled with the FIT image, U-Boot SPL loads
the firmware binary and U-Boot proper before starting the firmware. The
firmware, in turn, is responsible for starting U-Boot proper.
Information on the memory location of the U-Boot proper loadable must be
available to the SPL framework so that it can be passed to the firmware
binary. To support this use case when no device tree is found in the FIT
image, fall back to the U-Boot device tree in this situation.

At the same time, update the comment to remove the note that the
destination address must be aligned to ARCH_DMA_MINALIGN. Alignment is
only required as an intermediate step when reading external data. This
is automatically handled by spl_fit_append_fdt(). After reading the
external data, it is copied to the specified address, which does not
have to be aligned to ARCH_DMA_MINALIGN.

Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Anup Patel <anup.patel@wdc.com>
2019-08-26 16:07:42 +08:00
..
eeprom SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
init spl: implement stack usage check 2019-08-11 16:43:41 -04:00
spl spl: fit: use U-Boot device tree when FIT image has no device tree 2019-08-26 16:07:42 +08:00
android_ab.c common: Implement A/B metadata 2019-07-24 13:16:29 -04:00
autoboot.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
avb_verify.c avb: Fix build when CONFIG_OPTEE_TA_AVB is disabled 2019-08-07 15:31:04 -04:00
bedbug.c Consolidate bool type 2013-04-01 16:33:52 -04:00
bloblist.c Add core support for a bloblist to convey data from SPL 2018-11-26 08:25:32 -05:00
board_f.c env: Rename environment.h to env_internal.h 2019-08-11 19:27:31 -04:00
board_info.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
board_r.c Drop PCMCIA 2019-08-11 19:27:41 -04:00
boot_fit.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bootm_os.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
bootm.c env: Move env_set_hex() to env.h 2019-08-11 16:43:41 -04:00
bootretry.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
bootstage.c bootstage: Allow calling bootstage_mark() before bootstage_init() 2019-04-23 20:26:43 -06:00
bouncebuf.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cli_hush.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
cli_readline.c cli: handle getch error 2018-09-10 20:20:34 -04:00
cli_simple.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
cli.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
command.c env: Create a new file for environment functions 2019-08-11 16:43:41 -04:00
common_fit.c common: Compile error with CONFIG_MULTI_DTB_FIT and not SPL 2018-11-09 10:44:50 -05:00
console.c env: Rename environment.h to env_internal.h 2019-08-11 19:27:31 -04:00
cros_ec.c sandbox: cros_ec: exynos: Drop use of cros_ec_get_error() 2018-11-20 19:14:22 -07:00
ddr_spd.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dfu.c usb: gadget: Do not call board_usb_xxx() directly in USB gadget drivers 2018-12-07 16:31:45 +01:00
dlmalloc.c malloc: Fix memalign not honoring alignment prior to full malloc init 2019-04-23 17:57:27 -04:00
dlmalloc.src Consolidate bool type 2013-04-01 16:33:52 -04:00
edid.c edid: fix edid_get_timing_validate() mode_valid lookup 2019-07-29 19:14:58 +02:00
exports.c board/ls2085rdb: Export functions for standalone AQ FW load apps 2015-07-20 11:44:37 -07:00
fdt_support.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
flash.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
hash.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
hwconfig.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
image-android-dt.c common: image-android-dt: Fix logic in print fdt info routine 2019-08-07 15:31:05 -04:00
image-android.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
image-fdt.c env: Move env_get_hex() to env.h 2019-08-11 16:43:41 -04:00
image-fit.c fit: Do not automatically decompress ramdisk images 2019-08-07 15:31:05 -04:00
image-sig.c rsa: reject images with unknown padding 2019-06-21 10:07:11 -04:00
image.c env: Drop environment.h header file where not needed 2019-08-11 16:43:41 -04:00
iomux.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
iotrace.c iotrace: fix behaviour when buffer is full 2018-06-18 14:02:04 -04:00
kallsyms.c Add support for Linux-like kallsysms 2009-06-12 20:45:48 +02:00
Kconfig Convert CONFIG_SHOW_BOOT_PROGRESS to Kconfig 2019-08-02 11:17:58 -04:00
kgdb_stubs.c Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
kgdb.c Fix spelling of "occurred". 2016-05-02 18:37:09 -04:00
lcd_console_rotation.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
lcd_console.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
lcd_simplefb.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
lcd.c splash: display splash in DM_VIDEO configurations 2019-06-04 23:20:43 +02:00
log_console.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
log.c log: Add a Kconfig option to set the default log level 2019-02-20 15:21:44 +08:00
lynxkdi.c Remove unnecessary instances of DECLARE_GLOBAL_DATA_PTR 2018-04-27 14:54:48 -04:00
main.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
Makefile common: Implement A/B metadata 2019-07-24 13:16:29 -04:00
malloc_simple.c malloc_simple: Add logging of allocations 2018-11-29 09:30:05 -07:00
memsize.c common/memsize.c: Increase save array for supporting memory size > 4GB 2018-07-10 16:55:59 -04:00
menu.c menu: don't bother going interactive with just one menu item 2019-07-24 13:16:29 -04:00
miiphyutil.c miiphy: Add function to retrieve MDIO bus list head 2018-10-24 14:45:36 -05:00
s_record.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
splash_source.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
splash.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
stdio.c splash: display splash in DM_VIDEO configurations 2019-06-04 23:20:43 +02:00
system_map.c Add support for Linux-like kallsysms 2009-06-12 20:45:48 +02:00
update.c env: Move env_set() to env.h 2019-08-11 16:43:41 -04:00
usb_hub.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
usb_kbd.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
usb_storage.c usb: storage: s/CONFIG_BLK/CONFIG_IS_ENABLED(BLK)/ 2018-11-26 21:19:04 +01:00
usb.c usb: s/CONFIG_DM_USB/CONFIG_IS_ENABLED(DM_USB)/ 2018-11-26 21:19:03 +01:00
xyzModem.c xyz-modem: Fix timeout loop waiting with WATCHDOG 2019-01-15 15:28:51 -05:00