<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.ronetix.at/index.php?action=history&amp;feed=atom&amp;title=iMX8MP-COMPACT-CM_U-Boot</id>
	<title>iMX8MP-COMPACT-CM U-Boot - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ronetix.at/index.php?action=history&amp;feed=atom&amp;title=iMX8MP-COMPACT-CM_U-Boot"/>
	<link rel="alternate" type="text/html" href="https://wiki.ronetix.at/index.php?title=iMX8MP-COMPACT-CM_U-Boot&amp;action=history"/>
	<updated>2026-11-03T22:09:39Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.ronetix.at/index.php?title=iMX8MP-COMPACT-CM_U-Boot&amp;diff=410&amp;oldid=prev</id>
		<title>Ilko: Initial creation</title>
		<link rel="alternate" type="text/html" href="https://wiki.ronetix.at/index.php?title=iMX8MP-COMPACT-CM_U-Boot&amp;diff=410&amp;oldid=prev"/>
		<updated>2024-02-06T09:49:28Z</updated>

		<summary type="html">&lt;p&gt;Initial creation&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{#vardefine:HARDWARE_NAME|iMX8MP-COMPACT-CM}}&lt;br /&gt;
{{#vardefine:UBOOT_BRANCH|lf_v2023.04}}&lt;br /&gt;
{{#vardefine:DEFCONFIG_NAME|imx8mp_cm_defconfig}}&lt;br /&gt;
[[File:iMX8MP-CM-top.png|thumb]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
The U-Boot bootloader is used for low-level initialization and operating system loading.&lt;br /&gt;
&lt;br /&gt;
== Setting Boot mode ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Boot mode setting on carrier board&lt;br /&gt;
|-&lt;br /&gt;
! BOOT !! J4:1-2 !! J4:3-4 !! J4:5-6 !! J4:7-8&lt;br /&gt;
|-&lt;br /&gt;
| Cortex-A53 Serial Downloader || close || open || open || open&lt;br /&gt;
|-&lt;br /&gt;
| Cortex-A53, eMMC || open || close || open || open&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Terminal Setup ==&lt;br /&gt;
The carrier board connects the host PC using the micro-B USB connector (J6).&amp;lt;br&amp;gt;&lt;br /&gt;
Common serial communication programs such as Minicom, HyperTerminal, Tera Term, or PuTTY can be used.&amp;lt;br&amp;gt; &lt;br /&gt;
The {{#var:HARDWARE_NAME}} board uses the second port for the Arm Cortex-A cores console.&lt;br /&gt;
== Building U-BOOT for {{#var:HARDWARE_NAME}} ==&lt;br /&gt;
This U-BOOT is based on https://github.com/nxp-imx/uboot-imx, branch {{#var:UBOOT_BRANCH}}&lt;br /&gt;
&lt;br /&gt;
=== Set up the cross-compiler and CPU architecture ===&lt;br /&gt;
 $ export ARCH=arm64&lt;br /&gt;
 $ export CROSS_COMPILE=/opt/cross/aarch64-ronetix-linux-11.1/bin/aarch64-ronetix-linux-gnu-&lt;br /&gt;
&lt;br /&gt;
A cross-compiler can be downloaded from here:&lt;br /&gt;
http://download.ronetix.at/toolchains/crosstool-ng&lt;br /&gt;
&lt;br /&gt;
=== Clone the latest revision of the repo ===&lt;br /&gt;
 $ git clone https://github.com/ronetix/u-boot.git uboot-imx --depth=1 -b {{#var:UBOOT_BRANCH}}&lt;br /&gt;
 $ cd uboot-imx&lt;br /&gt;
&lt;br /&gt;
=== Configure ===&lt;br /&gt;
 $ make {{#var:DEFCONFIG_NAME}}&lt;br /&gt;
&lt;br /&gt;
=== Build ===&lt;br /&gt;
 $ make&lt;br /&gt;
&lt;br /&gt;
=== Create IMX image ===&lt;br /&gt;
Create a new Firmware package &amp;#039;&amp;#039;&amp;#039;flash.bin&amp;#039;&amp;#039;&amp;#039; that contains SPL, U-Boot, Arm Trusted Firmware, Sentinel&lt;br /&gt;
Firmware, DDR PHY Firmware.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 $ source ./tools/imx_build_firmware.sh imx8mp&lt;br /&gt;
&lt;br /&gt;
=== Build Results ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | File Name&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Description&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding: 5px;&amp;quot;| u-boot&lt;br /&gt;
| style=&amp;quot;padding: 5px;&amp;quot;| U-BOOT ELF image used for JTAG debugging&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding: 5px;&amp;quot;| u-boot-dtb.bin&lt;br /&gt;
| style=&amp;quot;padding: 5px;&amp;quot;| U-BOOT image with DTB&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;padding: 5px;&amp;quot;| ./imx-mkimage/iMX8M/flash.bin&lt;br /&gt;
| style=&amp;quot;padding: 5px;&amp;quot;| IMX bootloader&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Programming the IMX image ==&lt;br /&gt;
This section describes how to write the bootloader into the eMMC using UUU.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Universal update utility ===&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==== Downloading UUU ====&lt;br /&gt;
Download UUU version 1.5.21 or later from https://github.com/nxp-imx/mfgtools/releases&lt;br /&gt;
&lt;br /&gt;
==== Connect USB ports ====&lt;br /&gt;
Follow the instructions below:&lt;br /&gt;
* Connect a USB cable from a computer to the J7, port USB-3 (Type C) port on the carrier board for download link.&lt;br /&gt;
* Connect a USB cable from J6, port UART-DBG (Micro-AB) port to the computer for console output.&lt;br /&gt;
* Open a Terminal emulator program&lt;br /&gt;
* Set the boot mode to &amp;quot;Cortex-A53 Serial Downloader&amp;quot;, see [[#Setting Boot mode]]&lt;br /&gt;
&lt;br /&gt;
=== Write flash.bin into eMMC ===&lt;br /&gt;
&lt;br /&gt;
  $ cd ./imx-mkimage/iMX8M&lt;br /&gt;
  $ wget http://download.ronetix.at/boards/doc/i.MX8MP-COMPACT-CM/tools/u-boot.uuu&lt;br /&gt;
  $ uuu u-boot.uuu&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- use template --&amp;gt;&lt;br /&gt;
{{SeeAlso}}&lt;/div&gt;</summary>
		<author><name>Ilko</name></author>
	</entry>
</feed>