Ye Li | f3c8abb | 2025-04-28 18:37:43 +0800 | [diff] [blame] | 1 | .. SPDX-License-Identifier: GPL-2.0+ |
| 2 | |
| 3 | imx95_evk |
| 4 | ======================= |
| 5 | |
| 6 | U-Boot for the NXP i.MX95 19x19 EVK board |
| 7 | |
| 8 | Quick Start |
| 9 | ----------- |
| 10 | |
| 11 | - Get ahab-container.img |
| 12 | - Get DDR PHY Firmware Images |
| 13 | - Get and Build OEI Images |
| 14 | - Get and Build System Manager Image |
| 15 | - Get and Build the ARM Trusted Firmware |
| 16 | - Build the Bootloader Image |
| 17 | - Boot |
| 18 | |
| 19 | Get ahab-container.img |
| 20 | -------------------------------------- |
| 21 | |
| 22 | Note: srctree is U-Boot source directory |
| 23 | |
| 24 | .. code-block:: bash |
| 25 | |
| 26 | $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-ele-imx-1.3.0-17945fc.bin |
| 27 | $ sh firmware-ele-imx-1.3.0-17945fc.bin --auto-accept |
| 28 | $ cp firmware-ele-imx-1.3.0-17945fc/mx95a0-ahab-container.img $(srctree) |
| 29 | |
| 30 | Get DDR PHY Firmware Images |
| 31 | -------------------------------------- |
| 32 | |
| 33 | Note: srctree is U-Boot source directory |
| 34 | |
| 35 | .. code-block:: bash |
| 36 | |
| 37 | $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.26-d4c33ab.bin |
| 38 | $ sh firmware-imx-8.26-d4c33ab.bin --auto-accept |
| 39 | $ cp firmware-imx-8.26-d4c33ab/firmware/ddr/synopsys/lpddr5*v202311.bin $(srctree) |
| 40 | |
| 41 | Get and Build OEI Images |
| 42 | -------------------------------------- |
| 43 | |
| 44 | Note: srctree is U-Boot source directory |
| 45 | Get OEI from: https://github.com/nxp-imx/imx-oei |
| 46 | branch: master |
| 47 | |
| 48 | .. code-block:: bash |
| 49 | |
| 50 | $ sudo apt -y install make gcc g++-multilib srecord |
| 51 | $ wget https://developer.arm.com/-/media/Files/downloads/gnu/13.3.rel1/binrel/arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-eabi.tar.xz |
| 52 | $ tar xvf arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-eabi.tar.xz |
| 53 | $ export TOOLS=$PWD |
| 54 | $ git clone -b master https://github.com/nxp-imx/imx-oei.git |
| 55 | $ cd imx-oei |
| 56 | $ make board=mx95lp5 oei=ddr DEBUG=1 |
| 57 | $ cp build/mx95lp5/ddr/oei-m33-ddr.bin $(srctree) |
| 58 | |
| 59 | $ make board=mx95lp5 oei=tcm DEBUG=1 |
| 60 | $ cp build/mx95lp5/tcm/oei-m33-tcm.bin $(srctree) |
| 61 | |
| 62 | Get and Build System Manager Image |
| 63 | -------------------------------------- |
| 64 | |
| 65 | Note: srctree is U-Boot source directory |
| 66 | Get System Manager from: https://github.com/nxp-imx/imx-sm |
| 67 | branch: master |
| 68 | |
| 69 | .. code-block:: bash |
| 70 | |
| 71 | $ sudo apt -y install make gcc g++-multilib srecord |
| 72 | $ wget https://developer.arm.com/-/media/Files/downloads/gnu/13.3.rel1/binrel/arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-eabi.tar.xz |
| 73 | $ tar xvf arm-gnu-toolchain-13.3.rel1-x86_64-arm-none-eabi.tar.xz |
| 74 | $ export TOOLS=$PWD |
| 75 | $ git clone -b master https://github.com/nxp-imx/imx-sm.git |
| 76 | $ cd imx-sm |
| 77 | $ make config=mx95evk all |
| 78 | $ cp build/mx95evk/m33_image.bin $(srctree) |
| 79 | |
| 80 | Get and Build the ARM Trusted Firmware |
| 81 | -------------------------------------- |
| 82 | |
| 83 | Note: srctree is U-Boot source directory |
| 84 | Get ATF from: https://github.com/nxp-imx/imx-atf/ |
| 85 | branch: lf_v2.10 |
| 86 | |
| 87 | .. code-block:: bash |
| 88 | |
| 89 | $ export CROSS_COMPILE=aarch64-poky-linux- |
| 90 | $ unset LDFLAGS |
| 91 | $ git clone -b lf_v2.10 https://github.com/nxp-imx/imx-atf.git |
| 92 | $ cd imx-atf |
| 93 | $ make PLAT=imx95 bl31 |
| 94 | $ cp build/imx95/release/bl31.bin $(srctree) |
| 95 | |
| 96 | Build the Bootloader Image |
| 97 | -------------------------- |
| 98 | |
| 99 | .. code-block:: bash |
| 100 | |
| 101 | $ export CROSS_COMPILE=aarch64-poky-linux- |
| 102 | $ make imx95_19x19_evk_defconfig |
| 103 | $ make |
| 104 | |
| 105 | Copy imx-boot-imx95.bin to the MicroSD card: |
| 106 | |
| 107 | .. code-block:: bash |
| 108 | |
| 109 | $ sudo dd if=flash.bin of=/dev/sd[x] bs=1k seek=32 conv=fsync |
| 110 | |
| 111 | Boot |
| 112 | ---- |
| 113 | |
| 114 | Set i.MX95 boot device to MicroSD card |