HCL:FRDM-iMX93

Jump to: navigation, search

FRDM i.MX93

The NXP FRDM-IMX93 development board is a single-board computer featuring the NXP i.MX 93 application processor.

Technical Data

  • Processor
    • Dual Arm Cortex-A55 CPU @1.7GHz
    • Arm Cortex-M33 MPU @250MHz
    • Arm Ethos U-65 NPU
    • EdgeLock Secure Enclave
  • Memory ​
    • 2 GB LPDDR4X / LPDDR4
    • 32 GB eMMC5.1
    • MicroSD slot
    • EEPROM
  • Display and Camera Interfaces​
    • x4 lane MIPI DSI interface, FPC 22-Pin connector
    • x4 lane LVDS to HDMI, HDMI connector
    • x2 lane MIPI CSI-2 interface, FPC 22-Pin connector
  • Wireless​
    • u-blox MAYA-W276-00B Tri-Radio Wi-Fi 6, Bluetooth 5.4, and 802.15.4 module
      • Based on NXP IW612 module
      • Dual-mode Bluetooth classic and Bluetooth Low Energy 5.4
      • 802.15.4 radio supporting Thread and Zigbee
  • Audio
    • 3.5mm headphone jack for MQS support
  • Connectivity
    • USB2.0 Type-C connector
    • USB2.0 type A connector
    • GbE RJ45 x 2
    • CAN (HDR)
    • 2x20 EXPI
    • I²C HDR
    • ADC HDR

OS images

Geeko-white.png
Tumbleweed
JeOS image

If the direct links above do not work for you, please check the general download directory for the images.

Geeko-white.png
SL Micro 6.1 (unofficial)
https://download.opensuse.org/repositories/home:/iivanov:/FRDM-iMX93/SL-Micro_6.1_images/SL-Micro.aarch64-6.1-Default-Build27.6.raw.xz

If the direct links above do not work for you, please check the download directory for the images.

Firmware

IMX Boot firmware image (imx-boot/flash.bin) consist of a several components. Detailed description could be found here.

  • Trusted Firmware-A - NXP fork of generic implementation of secure world software for Armv7-A and Armv8-A class processors. Package which builds the binary artefacts for this could be found here.
  • Devicetree - Package which builds the binary artefacts for several i.MX93 SoC based boards could be found here
  • DDR initialisation code - Package which contains these BLOB artefacts could be found here.
  • Das U-Boot - NXP fork of a U-Boot loader - Package which builds the binary artefacts for this could be found here.
  • Firmware for Secure Enclave Hardware - perhaps not mandatory for every project. Package which contains these BLOB artefacts could be found here.
  • IMX boot image creator - This tool uses artefacts from the above packages and wrap them into IMX specific containers format. Package which deliver the result of this process could be found here.

Pre-build RPM packages for all of the above could be found here. If you want just to run you board, what is needed is imx-mkimage-4622115_xxx.rpm

Device boot modes

For details see UG10195 i.MX FRDM Software User Guide Section 3.2 Boot switch.

Boot switch
SW1[1:4] Boot device
1000 Serial downloader (USB)
0100 eMMC
1100 uSD

Prepare firmware and OS artefacts

Un-pack OS raw image:

$ xz -d openSUSE-Tumbleweed-ARM-JeOS-efi.aarch64.raw.xz

Un-pack firmware files:

$ rpm2cpio imx-mkimage-4622115_xxx.rpm | cpis -idmv

This should give you ./usr/share/imx-mkimage/flash-FRDM-iMX93.bin

Flash to eMMC via USB

  • Install mfgtools on your host machine which provides Universal update utility tool. Universal update utility (UUU) runs on Windows, Linux OS, FWIW, or Mac OS X (not tested yet) host and is used to download images to different devices on an i.MX board. For details see Section 3.4 "Universal update utility" of the "UG10195 i.MX FRDM Software User Guide"
$ zypper in mfgtools
  • Place device into Serial downloader (USB) boot mode.
  • Connect a USB cable from a computer to the board's USB OTG/Type C port for downloading
  • Check that device is visible to the host workstation.
$ uuu -lsusb
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.5.182-0-gda3cd53

Connected Known USB Devices
	Path	 Chip	 Pro	 Vid	 Pid	 BcdVersion	 Serial_no
	====================================================================
	0:1334	 MX93	 SDPS:	 0x1FC9	0x014E	 0x0001	 1EA12232D022486E
  • Flash boot firmware and OS image to the eMMC
$ uuu -b emmc_all ./usr/share/imx-mkimage/flash-FRDM-iMX93.bin  openSUSE-Tumbleweed-ARM-JeOS-efi.aarch64.raw
  • Change the boot switch to eMMC card boot mode
  • Reset the board.

Flash to the uSD card

  • Copy an openSUSE image
$ cat openSUSE-Tumbleweed-ARM-JeOS-efi.aarch64.raw | sudo dd of=/dev/sd<partition> bs=1M conv=fsync
  • Copy firmware bootloader image
$ sudo dd if=./usr/share/imx-mkimage/flash-FRDM-iMX93.bin of=/dev/sd<partition> bs=1k seek=32 conv=fsync
  • Plug the card into uSD card slot
  • Change the boot switch to SD card boot mode
  • Reset the board.

Post installation touches

By default U-Boot will generate random MAC addresses for both Ethernet interfaces. You can easily fix this by setting them in the U-Boot environment. According "UG10195 i.MX FRDM Software User Guide" section "3.6 Running Linux OS on the target".

u-boot=> saveenv