
On Sun, Jan 26, 2020 at 5:56 AM Marcel Ziswiler marcel@ziswiler.com wrote:
From: Igor Opaniuk igor.opaniuk@toradex.com
Add README with build steps for U-boot and TF-A for Verdin iMX8M Mini SoM.
Signed-off-by: Igor Opaniuk igor.opaniuk@toradex.com Signed-off-by: Marcel Ziswiler marcel.ziswiler@toradex.com
Reviewed-by: Oleksandr Suvorov oleksandr.suvorov@toradex.com
Changes in v2: None
board/toradex/verdin-imx8mm/README | 88 ++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 board/toradex/verdin-imx8mm/README
diff --git a/board/toradex/verdin-imx8mm/README b/board/toradex/verdin-imx8mm/README new file mode 100644 index 0000000000..1dac969476 --- /dev/null +++ b/board/toradex/verdin-imx8mm/README @@ -0,0 +1,88 @@ +U-Boot for the Toradex Verdin iMX8M Mini Module
+Quick Start +===========
+- Build the ARM trusted firmware binary +- Get the DDR firmware +- Build U-Boot +- Flash to eMMC +- Boot
+Get and Build the ARM Trusted Firmware (Trusted Firmware A) +===========================================================
+$ echo "Downloading and building TF-A..." +$ git clone -b imx_4.14.98_2.3.0 https://source.codeaurora.org/external/imx/imx-atf +$ cd imx-atf
+Please edit `plat/imx/imx8mm/include/platform_def.h` so it contains proper +values for UART configuration and BL31 base address (correct values listed +below): +#define BL31_BASE 0x910000 +#define IMX_BOOT_UART_BASE 0x30860000 +#define DEBUG_CONSOLE 1
+Then build ATF (TF-A): +$ make PLAT=imx8mm bl31
+Get the DDR Firmware +====================
+$ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.4.1.bin +$ chmod +x firmware-imx-8.4.1.bin +$ ./firmware-imx-8.4.1.bin +$ cp firmware-imx-8.4.1/firmware/ddr/synopsys/lpddr4*.bin ./
+Build U-Boot +============
+$ export CROSS_COMPILE=aarch64-linux-gnu- +$ make verdin-imx8mm_defconfig +$ make flash.bin
+Flash to eMMC +=============
+> tftpboot ${loadaddr} flash.bin +> setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200 +> mmc dev 0 1 && mmc write ${loadaddr} 0x2 ${blkcnt}
+As a convenience, instead of the last two commands one may also use the update +U-Boot wrapper: +> run update_uboot
+Boot +====
+ATF, U-boot proper and u-boot.dtb images are packed into FIT image, +which is loaded and parsed by SPL.
+Boot sequence is: +SPL ---> ATF (TF-A) ---> U-boot proper
+Output: +U-Boot SPL 2020.01-00187-gd411d164e5 (Jan 26 2020 - 04:47:26 +0100) +Normal Boot +Trying to boot from MMC1 +NOTICE: Configuring TZASC380 +NOTICE: RDC off +NOTICE: BL31: v2.0(release):rel_imx_4.14.98_2.3.0-0-g09c5cc994-dirty +NOTICE: BL31: Built : 01:11:41, Jan 25 2020 +NOTICE: sip svc init
+U-Boot 2020.01-00187-gd411d164e5 (Jan 26 2020 - 04:47:26 +0100)
+CPU: Freescale i.MX8MMQ rev1.0 at 0 MHz +Reset cause: POR +DRAM: 2 GiB +MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2 +Loading Environment from MMC... OK +In: serial +Out: serial +Err: serial +Model: Toradex Verdin iMX8M Mini Quad 2GB Wi-Fi / BT IT V1.0A, Serial# 06535149 +Net: eth0: ethernet@30be0000 +Hit any key to stop autoboot: 0
+Verdin iMX8MM #
2.24.1