u-boot/board/freescale/imx8qm_mek
Shiji Yang 506df9dc58 treewide: rework linker symbol declarations in sections header
1. Convert all linker symbols to char[] type so that we can get the
   corresponding address by calling array name 'var' or its address
   '&var'. In this way, we can avoid some potential issues[1].
2. Remove unused symbol '_TEXT_BASE'. It has been abandoned and has
   not been referenced by any source code.
3. Move '__data_end' to the arch x86's own sections header as it's
   only used by x86 arch.
4. Remove some duplicate declared linker symbols. Now we use the
   standard header file to declare them.

[1] This patch fixes the boot failure on MIPS target. Error log:
SPL: Image overlaps SPL

Fixes: 1b8a1be1a1 ("spl: spl_legacy: Fix spl_end address")
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2023-08-09 09:21:42 -04:00
..
imx8qm_mek.c imx: move imx8 sci header file to include/firmware/imx 2023-05-21 16:54:32 +02:00
imximage.cfg imx: Don't define __ASSEMBLY__ in source files 2022-02-08 23:07:58 -05:00
Kconfig nxp: Make board/freescale/common/Kconfig safe to include once in arch/Kconfig 2022-07-05 17:03:02 -04:00
MAINTAINERS imx: support i.MX8QM MEK board 2019-04-25 17:03:25 +02:00
Makefile imx: support i.MX8QM MEK board 2019-04-25 17:03:25 +02:00
README imx: Suggest the NXP ATF github repo 2023-01-31 16:02:05 +01:00
spl.c treewide: rework linker symbol declarations in sections header 2023-08-09 09:21:42 -04:00
uboot-container.cfg Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE 2022-10-31 11:01:31 -04:00

U-Boot for the NXP i.MX8QM EVK board

Quick Start
===========

- Build the ARM Trusted firmware binary
- Get scfw_tcm.bin and ahab-container.img
- Build U-Boot
- Flash the binary into the SD card
- Boot

Get and Build the ARM Trusted firmware
======================================

$ git clone https://github.com/nxp-imx/imx-atf
$ cd imx-atf/
$ git checkout origin/imx_4.14.78_1.0.0_ga -b imx_4.14.78_1.0.0_ga
$ make PLAT=imx8qm bl31

And copy the resulting bl31.bin to u-boot directory:

$ cp build/imx8qm/release/bl31.bin path/to/u-boot/

Get scfw_tcm.bin and ahab-container.img
=======================================

$ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/imx-sc-firmware-1.1.bin
$ chmod +x imx-sc-firmware-1.1.bin
$ ./imx-sc-firmware-1.1.bin
$ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.0.bin
$ chmod +x firmware-imx-8.0.bin
$ ./firmware-imx-8.0.bin


And copy the following firmwares to U-Boot folder:

* `imx-sc-firmware-1.1/mx8qm-mek-scfw-tcm.bin`
* `firmware-imx-8.0/firmware/seco/mx8qm-ahab-container.img`

Build U-Boot
============
$ make imx8qm_mek_defconfig
$ make

Flash the binary into the SD card
=================================

Burn the flash.bin binary to SD card offset 32KB:

$ sudo dd if=flash.bin of=/dev/sd[x] bs=1024 seek=32

Boot
====
Set Boot switch SW2: 001100.