Kontron Electronics SL i.MX8MM SoM¶
The Kontron SoM-Line i.MX8MM (N801x) by Kontron Electronics GmbH is a SoM module with an i.MX8M-Mini SoC, 1/2/4 GB LPDDR4 RAM, SPI NOR, eMMC and PMIC.
The matching evaluation boards (Board-Line) have two Ethernet ports, USB 2.0, HDMI/LVDS, SD card, CAN, RS485, RS232 and much more.
Quick Start¶
Get and Build the Trusted Firmware-A (TF-A)
Get the DDR firmware
Build U-Boot
Boot
Get and Build the Trusted Firmware-A (TF-A)¶
Note: builddir is U-Boot build directory (source directory for in-tree builds)
There are two sources for the TF-A. Mainline and NXP. Get the one you prefer (support and features might differ).
NXP’s imx-atf
Get TF-A from: https://source.codeaurora.org/external/imx/imx-atf, branch: imx_5.4.70_2.3.0
Apply the patch to select the correct UART for the console, otherwise the TF-A will lock up during boot.
Build
$ make PLAT=imx8mm bl31 $ cp build/imx8mm/release/bl31.bin $(builddir)
Mainline TF-A
Get TF-A from: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/, tag: v2.4
Build
$ make PLAT=imx8mm CROSS_COMPILE=aarch64-linux-gnu- IMX_BOOT_UART_BASE="0x30880000" bl31 $ cp build/imx8mm/release/bl31.bin $(builddir)
Get the DDR firmware¶
$ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.9.bin
$ chmod +x firmware-imx-8.9.bin
$ ./firmware-imx-8.9.bin
$ cp firmware-imx-8.9/firmware/ddr/synopsys/lpddr4*.bin $(builddir)
Build U-Boot¶
$ make kontron-sl-mx8mm_defconfig
$ make
Burn the flash.bin to SD card at an offset of 33 KiB:
$ dd if=flash.bin of=/dev/sd[x] bs=1K seek=33 conv=notrunc
Boot¶
Put the SD card in the slot on the board and apply power.
Further Information¶
The bootloader configuration is setup to be used with kernel FIT images. Legacy images might not be working out of the box.
Please see https://docs.kontron-electronics.de for further vendor documentation.