[PATCH v3] mkimage: Default to 8-byte alignment for DTBs added via -b argument
Beleswar Prasad Padhi
b-padhi at ti.com
Fri Jan 23 04:32:35 CET 2026
On 23/01/26 00:33, Marek Vasut wrote:
> On 1/22/26 6:45 PM, Tom Rini wrote:
>> On Thu, Jan 22, 2026 at 10:52:47PM +0530, Beleswar Padhi wrote:
>>
>>> When CONFIG_SPL_MULTI_DTB_FIT is enabled, multiple device trees are
>>> packed inside the multidtb.fit FIT image. While the individual DTBs
>>> and the FIT image start address are 8-byte aligned, the DTBs embedded
>>> within the FIT image are not guaranteed to maintain 8-byte alignment.
>>>
>>> This misalignment causes -FDT_ERR_ALIGNMENT failure in
>>> setup_multi_dtb_fit() when locating the next available DTB within the
>>> FIT blob and setting gd->fdt_blob, because of the recent libfdt
>>> hardening since commit 0535e46d55d7 ("scripts/dtc: Update to upstream
>>> version v1.7.2-35-g52f07dcca47c")
>>>
>>> The mkimage tool already supports enforcing this alignment via the -B
>>> option, but users would have to specify it explicitly. This change
>>> makes 8-byte alignment the default when using -b.
>>>
>>> Reported-by: Anshul Dalal <anshuld at ti.com>
>>> Closes: https://lore.kernel.org/u-boot/DFJ950O0QM0D.380U0N16ZO19E@ti.com
>>> Fixes: 0535e46d55d7 ("scripts/dtc: Update to upstream version v1.7.2-35-g52f07dcca47c")
>>> Signed-off-by: Beleswar Padhi <b-padhi at ti.com>
>>
>> Tested-by: Tom Rini <trini at konsulko.com>
> Doesn't this enable 8-byte alignment for everything in case a DT is specified on mkimage command line ? That doesn't seem right ?
>
> If I do mkimage -f auto -b ...dtb ... , then I only want the DTB to be 8-byte aligned, all the other blobs can be 4 byte aligned just fine .
All the mkimage flags are parsed at once and populated in the params
data structure in one shot in the code. There is no separation of code
specifically for generating a FIT for a DTB vs for anything else. We
would get the same result when using mkimage -f auto -b ...dtb... -B 0x8
I think we should be fine with this limitation for the usecases when
generating fitImage with mixed images. Unless you have some idea?
Thanks,
Beleswar
More information about the U-Boot
mailing list