<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/tools/zynqmpbif.c, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/u-boot.git/atom/tools/zynqmpbif.c?h=main</id>
<link rel='self' href='http://cgit.235523.xyz/u-boot.git/atom/tools/zynqmpbif.c?h=main'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<updated>2026-07-08T06:55:51Z</updated>
<entry>
<title>mkimage: allow zynqmpbif to use a register initialization file</title>
<updated>2026-07-08T06:55:51Z</updated>
<author>
<name>Erich E. Hoover</name>
<email>erich.e.hoover@gmail.com</email>
</author>
<published>2026-06-12T15:04:54Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=cc0d3f546063383b6547ffe850f61818eae8c700'/>
<id>urn:sha1:cc0d3f546063383b6547ffe850f61818eae8c700</id>
<content type='text'>
The ZynqMP Boot Image Format allows specifying the register
initialization file with the "[init]" attribute.  Since this
feature is already supported by the "zynqmpimage" backend, this
commit leverages that existing capability to add support for the
"[init]" attribute in the zynqmpbif backend:
https://docs.amd.com/r/en-US/ug1283-bootgen-user-guide/init

This currently uses the same register initialization file format as
zynqmpimage (ASCII text hex values with each line composed of a pair
of register address and value), for example:
===
0xff003248 0x12345678
===
It is not, yet, compatible with the format used by bootgen:
https://docs.amd.com/r/en-US/ug1283-bootgen-user-guide/Initialization-Pairs-and-INT-File-Attribute

Use this feature, with other zynqmpbif options, like so:
===
image : {
     [init] reginit.int
     [bootloader] fsbl.elf
     [pmufw_image] pmufw.elf
     [destination_cpu=a53-0, exception_level=el-3] bl31.elf
     [destination_cpu=a53-0, exception_level=el-2, load=0x08000000,
startup=0x08000000] u-boot.bin
}
===

Signed-off-by: Erich E. Hoover &lt;erich.e.hoover@gmail.com&gt;
Signed-off-by: Michal Simek &lt;michal.simek@amd.com&gt;
Link: https://lore.kernel.org/r/20260612150454.2194375-1-erich.e.hoover@gmail.com
</content>
</entry>
<entry>
<title>tools: zynqmpbif: Use compiler builtin instead of linux-specific __swab32</title>
<updated>2019-10-28T17:32:51Z</updated>
<author>
<name>Bin Meng</name>
<email>bmeng.cn@gmail.com</email>
</author>
<published>2019-10-27T12:19:42Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=afd3bf4318b0b3e845b5bc1f6763727229af9179'/>
<id>urn:sha1:afd3bf4318b0b3e845b5bc1f6763727229af9179</id>
<content type='text'>
__swab32() is a Linux specific macro defined in linux/swab.h. Let's
use the compiler equivalent builtin function __builtin_bswap32() for
better portability.

Signed-off-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</content>
</entry>
<entry>
<title>tools: zynqmpimage: Align image_size/image_stored_size</title>
<updated>2019-01-24T09:03:44Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@xilinx.com</email>
</author>
<published>2018-12-14T09:53:54Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=775ed87ac4015c8b17bc9d828e3bafe4a0f7ed03'/>
<id>urn:sha1:775ed87ac4015c8b17bc9d828e3bafe4a0f7ed03</id>
<content type='text'>
Bootrom is not capable to work with non aligned bootloader sizes.
SPL with OF_SEPARATE generates non-align images quite often that's
why this change is required before OF_SEPARATE enableding.

Signed-off-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
</content>
</entry>
<entry>
<title>tools: zynqmpimage: round up partition size</title>
<updated>2019-01-24T09:03:42Z</updated>
<author>
<name>Michael Tretter</name>
<email>m.tretter@pengutronix.de</email>
</author>
<published>2018-12-03T15:37:53Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=16c78cba92f0cb24d56eaa87356beaca4a2d7f56'/>
<id>urn:sha1:16c78cba92f0cb24d56eaa87356beaca4a2d7f56</id>
<content type='text'>
The FSBL copies "Total Partition Word Length" * 4 bytes from the boot.bin,
which implies that the partition size is 4 byte aligned. When writing the
partition, mkimage calculates "Total Partition Word Length" by dividing
the size by 4. This implicitly cuts unaligned bytes at the end of the
added binary.

Instead of rounding down, the size must be round up to 4 bytes and the
binary padded accordingly.

Signed-off-by: Michael Tretter &lt;m.tretter@pengutronix.de&gt;
Reviewed-by: Alexander Graf &lt;agraf@suse.de&gt;
Signed-off-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
</content>
</entry>
<entry>
<title>tools: zynqmpimage: Add bif support</title>
<updated>2018-05-11T07:23:44Z</updated>
<author>
<name>Alexander Graf</name>
<email>agraf@suse.de</email>
</author>
<published>2018-04-13T12:18:52Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=6915dcf35987d654b491524f151e56b91e0d0ec9'/>
<id>urn:sha1:6915dcf35987d654b491524f151e56b91e0d0ec9</id>
<content type='text'>
The officially described way to generate boot.bin files for ZynqMP is to
describe the contents of the target binary using a file of the "bif"
format.  This file then links to other files that all get packed into a
bootable image.

This patch adds support to read such a .bif file and generate a respective
ZynqMP boot.bin file that can include the normal image and pmu files, but
also supports image partitions now. This makes it a handy replacement for
the proprietary "bootgen" utility that is currently used to generate
boot.bin files with FSBL.

Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
Signed-off-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
</content>
</entry>
</feed>
