RNX-iMX93-SMARC Linux
Setting Boot mode
BOOT | J4:1-2 | J4:3-4 | J4:5-6 | J4:7-8 |
---|---|---|---|---|
Cortex-A55 Serial Downloader | close | open | open | open |
Cortex-A55, eMMC | open | close | open | open |
Terminal Setup
The carrier board connects the host PC using the micro-B USB connector (J3).
Common serial communication programs such as Minicom, HyperTerminal, Tera Term, or PuTTY can be used.
The RNX-iMX93-SMARC board uses the second port for the Arm Cortex-A cores console.
Overview
The Linux kernel provides support for on-board peripherals and interfaces of the RNX-iMX93-SMARC System-on-Module
Building kernel for RNX-iMX93-SMARC
This Linux kernel is based on https://github.com/nxp-imx/linux-imx, branch lf-6.1.y
Set up the cross-compiler and CPU architecture
$ export ARCH=arm64 $ export CROSS_COMPILE=/opt/cross/aarch64-ronetix-linux-11.1/bin/aarch64-ronetix-linux-gnu-
Cross-compiler can be downloaded from here: http://download.ronetix.at/toolchains/crosstool-ng
Clone the latest revision of the repo
$ git clone https://github.com/ronetix/linux.git $ cd linux $ git checkout remotes/origin/lf-6.1.y -b lf-6.1.y
Configure and build
$ make rnx_imx93_osm_defconfig $ make # or make -j$(nproc)
Build Results
The resulted images are located in arch/arm64/boot
File Name | Description |
---|---|
Image | Linux kernel image |
zImage | Linux kernel image, compressed |
imx93-rnx-smarc.dtb | Device tree blob for RNX-iMX93-SMARC |
Booting Linux Kernel
This section describes how to load and boot Linux kernel using UUU.
The Linux Kernel booting requires a bootloader.
The bootloader includes SPL, U-Boot, Arm Trusted Firmware, OP-TEE, Sentinel
Firmware and DDR PHY Firmware.
It can be built:
- by Yocto, the result is: tmp/deploy/images/rnx-imx93-smarc/imx-boot-rnx-imx93-smarc-sd.bin-flash_singleboot
or
- by the script u-boot-imx/tools/imx_build_firmware.sh, the result is: uboot-imx/imx-mkimage/iMX9/flash.bin
See Building U-Boot for more info how to build flash.bin
Universal update utility
The Universal Update Utility (UUU) runs on a Windows or Linux OS host and is used to download images to devices on an i.MX board.
Downloading UUU
Download UUU version 1.5.21 or later from https://github.com/nxp-imx/mfgtools/releases
Connect USB ports
Follow the instructions below:
- Connect a USB cable from a computer to the J9, port USB-A (Micro-AB) port on the carrier board for download link.
- Connect a USB cable from J3, port UART-DBG (Micro-AB) port to the computer for console output.
- Open a Terminal emulator program
- Set the boot mode to "Cortex-A55 Serial Downloader", see #Setting Boot mode
Upload and boot
U-BOOT must be already built in folder: uboot-imx
$ cd arch/arm64/boot $ cp ../../../../uboot-imx/imx-mkimage/iMX9/flash.bin . $ wget http://download.ronetix.at/boards/doc/RNX-iMX93-SMARC/tools/kernel-smarc.uuu $ uuu kernel-smarc.uuu
- Set the boot mode to "Cortex-A55, eMMC", see #Setting Boot mode
- reset the board
Boot log
http://download.ronetix.at/boards/doc/RNX-iMX93-SMARC/rnx-imx93-smarc_bootlog.txt
See also