1.. SPDX-License-Identifier: GPL-2.0+ 2 3imx8mm_evk 4========== 5 6U-Boot for the NXP i.MX8MM EVK board 7 8Quick Start 9----------- 10 11- Build the ARM Trusted firmware binary 12- Get ddr firmware 13- Build U-Boot 14- Boot 15 16Get and Build the ARM Trusted firmware 17-------------------------------------- 18 19Note: builddir is U-Boot build directory (source directory for in-tree builds) 20Get ATF from: https://github.com/nxp-imx/imx-atf 21branch: imx_5.4.47_2.2.0 22 23.. code-block:: bash 24 25 $ make PLAT=imx8mm bl31 26 $ cp build/imx8mm/release/bl31.bin $(builddir) 27 28Get the ddr firmware 29-------------------- 30 31.. code-block:: bash 32 33 $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.9.bin 34 $ chmod +x firmware-imx-8.9.bin 35 $ ./firmware-imx-8.9 36 $ cp firmware-imx-8.9/firmware/ddr/synopsys/lpddr4*.bin $(builddir) 37 38Build U-Boot for sd card 39-------------------------- 40 41.. code-block:: bash 42 43 $ export CROSS_COMPILE=aarch64-poky-linux- 44 $ make imx8mm_evk_defconfig 45 $ make 46 47Burn the flash.bin to MicroSD card offset 33KB: 48 49.. code-block:: bash 50 51 $sudo dd if=flash.bin of=/dev/sd[x] bs=1024 seek=33 conv=notrunc 52 53Boot 54---- 55Set Boot switch to SD boot 56 57Build U-Boot for qspi flash card 58------------------------------------ 59 60.. code-block:: bash 61 62 $ export CROSS_COMPILE=aarch64-poky-linux- 63 $ make imx8mm_evk_fspi_defconfig 64 $ make 65 66Currently, there is no direct support to write to QSPI Flash. 67Copy flash.bin to ${loadaddr} either from sd card or over network and then copy to 68qspi flash 69 70From sd card to memory 71 72.. code-block:: bash 73 74 $mmc dev 1 75 $mmc read ${loadaddr} 0x00 <size_of_flash.bin/512> 76 77.. code-block:: bash 78 79 $ sf probe 80 $ sf erase 0 <size_of_flash.bin_in_hex> 81 $ sf write $loadaddr 0x00 <size_of_flash.bin_in_hex> 82 83Boot from QSPI Flash 84----------------------- 85Set Boot Switch to QSPI Flash 86 87Pin configuration for imx8mm_revC evk to boot from qspi flash 88SW1101: 0110xxxxxx 89SW1102: 00100x0010 90