Difference between revisions of "Transclusion: CL-SOM-iMX7: U-Boot: Building Images"
(→Building the firmware images) |
|||
Line 1: | Line 1: | ||
==== Snapshot download ==== | ==== Snapshot download ==== | ||
− | * Download [ | + | * 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- | + | * 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- | + | 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