u-boot-brain/board/st/stm32mp1
Patrick Delaunay 60a2dd6aa2 board: st: stm32mp1: update load address for FIT examples
Update kernel load address for FIT examples to avoid relocation:
- Kernel example uses Image.gz with U-Boot gzip decompression
  at final kernel location 0x0xC0008000.
- Copro example loads zImage at a correct location (0xC4000000),
  to avoid zImage relocation before decompression by kernel code.

An other solution to avoid zImage relocation is to align
the kernel load and entry address with the real location in FIT
(the relocation of zImage is skipped in U-Boot bootm command for
identical address) but it is less flexible because this offset
depends on FIT content:

For example:

## Loading kernel from FIT Image at c2000000 ...
   Using 'ev1' configuration
   Trying 'kernel' kernel subimage
     Description:  Linux kernel
     Created:      2020-10-22   9:08:32 UTC
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0xc20000cc

The kernel offset in FIT is 0xCC in FIT and zImage is decompressed at
0xC0008000 by kernel code:

kernel {
	description = "Linux kernel";
	data = /incbin/("zImage");
	type = "kernel";
	arch = "arm";
	os = "linux";
	compression = "none";
	load = <0xC20000cc>;
	entry = <0xC20000cc>;
	hash-1 {
		algo = "sha1";
	};
};

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@st.com>
2020-11-25 14:27:19 +01:00
..
extlinux.conf stm32mp1: add example files for FIT generation 2019-08-27 11:19:23 +02:00
fit_copro_kernel_dtb.its board: st: stm32mp1: update load address for FIT examples 2020-11-25 14:27:19 +01:00
fit_kernel_dtb.its board: st: stm32mp1: update load address for FIT examples 2020-11-25 14:27:19 +01:00
Kconfig stm32mp1: split board and SOC support for STM32MP15x family 2020-01-17 13:58:27 +01:00
MAINTAINERS configs: stm32mp1: remove optee defconfig 2020-05-14 09:02:12 +02:00
Makefile board: stm32mp1: move the function board_debug_uart_init in spl.c 2020-07-07 16:01:23 +02:00
README doc: add board documentation for stm32mp1 2020-03-02 09:41:32 +01:00
spl.c board: stm32mp1: move the function board_debug_uart_init in spl.c 2020-07-07 16:01:23 +02:00
stm32mp1.c board: stm32mp1: no MTD partitions fixup for serial boot 2020-11-25 10:58:15 +01:00

see doc/board/st/stm32mp1.rst