Difference between revisions of "Transclusion: CL-SOM-iMX7: U-Boot: Building Images"

From Compulab Mediawiki
Jump to: navigation, search
(Building the firmware images)
Line 1: Line 1:
 
==== Snapshot download ====
 
==== Snapshot download ====
* Download [http://git.denx.de/?p=u-boot.git;a=snapshot;h=d85ca029f257b53a96da6c2fb421e78a003a9943;sf=tgz v2017.07] snapshot with your web browser.
+
* Download [https://github.com/u-boot/u-boot/archive/refs/tags/v2017.07.tar.gz v2017.07] snapshot with your web browser.
* Extract the downloaded archive {{filename|u-boot-d85ca02.tar.gz}}
+
* Extract the downloaded archive {{filename|u-boot-2017.07.tar.gz}}
 
<pre>
 
<pre>
 
cd /home/development/cl-som-imx7/u-boot
 
cd /home/development/cl-som-imx7/u-boot
tar xvf /path/to/downloaded/u-boot-d85ca02.tar.gz
+
tar xvf /path/to/downloaded/u-boot-2017.07.tar.gz
 
mv u-boot* u-boot-cl-som-imx7
 
mv u-boot* u-boot-cl-som-imx7
 
</pre>
 
</pre>

Revision as of 08:08, 26 June 2023

Snapshot download

  • Download v2017.07 snapshot with your web browser.
  • Extract the downloaded archive u-boot-2017.07.tar.gz
cd /home/development/cl-som-imx7/u-boot
tar xvf /path/to/downloaded/u-boot-2017.07.tar.gz
mv u-boot* u-boot-cl-som-imx7
This will create /home/development/cl-som-imx7/u-boot/u-boot-cl-som-imx7 directory containing U-Boot source code tree.
  • Apply the CL-SOM-iMX7 patch
cd /home/development/cl-som-imx7/u-boot/u-boot-cl-som-imx7
patch -p1 < /path/to/cl-som-imx7-u-boot-package/u-boot/u-boot-*.patch

Git clone

  • Install git version control system.
  • Create a clone of U-Boot tree
cd /home/development/cl-som-imx7/u-boot
git clone git://git.denx.de/u-boot.git u-boot-cl-som-imx7
cd /home/development/cl-som-imx7/u-boot/u-boot-cl-som-imx7
  • Create a branch for CL-SOM-iMX7 development. The CL-SOM-iMX7 patches are generated vs. v2017.07 tag (d85ca029f257b53a96da6c2fb421e78a003a9943 commit) in the U-Boot tree. It is recommended to use exactly the same baseline to avoid merge conflicts.
git checkout -b cl-som-imx7-dev v2017.07
  • Apply CL-SOM-iMX7 patch
git am /path/to/cl-som-imx7-u-boot-package/u-boot/patches/*.patch

Building the firmware images

  • First, compile U-Boot. The following commands create the u-boot.imx binary (along with other image types):
export ARCH=arm
export CROSS_COMPILE=arm-none-linux-eabi-
make mrproper
make cl-som-imx7_defconfig && make
  • Merge the SPL and U-Boot images into one firmware image:
dd if=/dev/zero count=640 bs=1K | tr '\000' '\377' > cl-som-imx7-firmware
dd if=SPL of=cl-som-imx7-firmware bs=1K seek=1 conv=notrunc
dd if=u-boot.img of=cl-som-imx7-firmware bs=1K seek=64 conv=notrunc