u-boot-brain/arch/arm/mach-imx/mx7
Igor Opaniuk c0f037f6a2 mach-imx: bootaux: elf firmware support
Currently imx-specific bootaux command doesn't support ELF format
firmware for Cortex-M4 core.

This patches introduces a PoC implementation of handling elf firmware
(load_elf_image_phdr() was copy-pasted from elf.c just for PoC).
ELF64 binaries isn't supported yet.

This has the advantage that the user does not need to know to which
address the binary has been linked to. However, in order to handle
and load the elf sections to the right address, we need to translate the
Cortex-M4 core memory addresses to primary/host CPU memory
addresses (Cortex A7/A9 cores).

This allows to boot firmwares from any location with just using
bootaux, e.g.:
> tftp ${loadaddr} hello_world.elf && bootaux ${loadaddr}

Similar translation table can be found in the Linux remoteproc
driver [1].

[1] https://elixir.bootlin.com/linux/latest/source/drivers/remoteproc/imx_rproc.c

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-01-07 10:26:56 +01:00
..
clock_slice.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock.c imx: replace CONFIG_SECURE_BOOT with CONFIG_IMX_HAB 2019-10-08 16:36:37 +02:00
ddr.c imx: mx7: fix potential overflow in imx_ddr_size() 2018-10-09 18:32:47 +02:00
Kconfig Add i.MX7D based Meerkat96 board support 2019-10-13 22:49:11 +02:00
Makefile imx: mx7: add system suspend/resume support 2018-09-04 08:47:23 +02:00
psci-mx7.c common: Move ARM cache operations out of common.h 2019-12-02 18:24:58 -05:00
psci-suspend.S imx: mx7: add system suspend/resume support 2018-09-04 08:47:23 +02:00
snvs.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
soc.c mach-imx: bootaux: elf firmware support 2020-01-07 10:26:56 +01:00