Gilles Talis | 29a8e33 | 2024-10-27 10:52:41 -0400 | [diff] [blame] | 1 | .. SPDX-License-Identifier: GPL-2.0-or-later |
| 2 | .. sectionauthor:: Gilles Talis <gilles.talis@gmail.com> |
| 3 | |
| 4 | i.MX8M Plus NavQ+ Board |
| 5 | ======================= |
| 6 | |
| 7 | U-Boot for the EmCraft Systems i.MX8M Plus NavQ+ board |
| 8 | |
| 9 | Quick Start |
| 10 | ----------- |
| 11 | |
| 12 | - Build the ARM trusted firmware binary |
| 13 | - Get the DDR firmware |
| 14 | - Build U-Boot |
| 15 | - Flash to eMMC |
| 16 | - Boot |
| 17 | |
| 18 | Get and Build the ARM Trusted Firmware (Trusted Firmware A) |
| 19 | ----------------------------------------------------------- |
| 20 | |
| 21 | .. code-block:: bash |
| 22 | |
| 23 | $ echo "Downloading and building TF-A..." |
| 24 | $ git clone -b lts-v2.10 https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git |
| 25 | $ cd trusted-firmware-a |
| 26 | |
| 27 | Then build ATF (TF-A): |
| 28 | |
| 29 | .. code-block:: bash |
| 30 | |
| 31 | $ export CROSS_COMPILE=aarch64-linux-gnu- |
| 32 | $ make PLAT=imx8mp bl31 |
| 33 | $ cp build/imx8mp/release/bl31.bin ../ |
| 34 | |
| 35 | Get the DDR Firmware |
| 36 | -------------------- |
| 37 | |
| 38 | .. code-block:: bash |
| 39 | |
| 40 | $ cd .. |
| 41 | $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.23.bin |
| 42 | $ chmod +x firmware-imx-8.23.bin |
| 43 | $ ./firmware-imx-8.23.bin |
| 44 | $ cp firmware-imx-8.23/firmware/ddr/synopsys/lpddr4*_202006.bin ./ |
| 45 | |
| 46 | Build U-Boot |
| 47 | ------------ |
| 48 | |
| 49 | .. code-block:: bash |
| 50 | |
| 51 | $ export CROSS_COMPILE=aarch64-linux-gnu- |
| 52 | $ make imx8mp_navqp_defconfig |
| 53 | $ make |
| 54 | |
| 55 | Burn the flash.bin to the MicroSD card at offset 32KB: |
| 56 | |
| 57 | .. code-block:: bash |
| 58 | |
| 59 | $ sudo dd if=flash.bin of=/dev/sd[x] bs=1K seek=32 conv=notrunc; sync |
| 60 | |
| 61 | Boot |
| 62 | ---- |
| 63 | |
| 64 | Set Boot switch to SD boot |
| 65 | Use /dev/ttyUSB0 for U-Boot console |