[REGRESSION] scripts/dtc: Update to upstream version v1.7.2-35-g52f07dcca47c

Marek Vasut marek.vasut at mailbox.org
Fri Feb 6 20:11:25 CET 2026


On 2/6/26 10:11 AM, Ye Li wrote:
> Hi Tom, Marek,
> 
> On 1/8/2026 10:12 PM, Tom Rini wrote:
>> On Thu, Jan 08, 2026 at 07:21:10PM +0530, Anshul Dalal wrote:
>>> CC+: TI folks
>>>
>>> On Thu Jan 8, 2026 at 7:15 PM IST, Anshul Dalal wrote:
>>>> Hi all,
>>>>
>>>> On Wed Dec 3, 2025 at 1:02 AM IST, Marek Vasut wrote:
>>>>> Synchronize local copy of DTC with Linux 6.17 . This includes the
>>>>> following picked and squashed commits from Linux kernel. The squash
>>>>> was necessary, since the DTC here contains changes which were also
>>>>> part of DTC in Linux alraedy, and the squash helped resolve those
>>>>> without going back and forth with the changes.
>>>>>
>>>>> The following commits from Linux are picked:
>>>>>
>>>>> 8f324cd712df7 # scripts/dtc: consolidate include path options in 
>>>>> Makefile
>>>>> b5b3d9b63b0ee # scripts/dtc: Add yamltree.c to dtc sources
>>>>> 7d97a76f226d6 # scripts/dtc: Update to upstream version v1.4.7-14- 
>>>>> gc86da84d30e4
>>>>> ea6f243be74e5 # scripts/dtc: Update to upstream version v1.4.7-57- 
>>>>> gf267e674d145
>>>>> 02d435d4eccd8 # scripts/dtc: Update to upstream version v1.5.0-23- 
>>>>> g87963ee20693
>>>>> 6e321b7637396 # scripts/dtc: Update to upstream version v1.5.0-30- 
>>>>> g702c1b6c0e73
>>>>> 9f19ec91a7a35 # scripts/dtc: dtx_diff - add color output support
>>>>> 8287d642f38d1 # scripts/dtc: Update to upstream version v1.5.1-22- 
>>>>> gc40aeb60b47a
>>>>> 4c52deef9225d # scripts/dtc: Revert "yamltree: Ensure consistent 
>>>>> bracketing of properties with phandles"
>>>>> 5d3827e1452ed # scripts/dtc: Remove unused makefile fragments
>>>>> 40dd266887654 # scripts/dtc: Update to upstream version v1.6.0-2- 
>>>>> g87a656ae5ff9
>>>>> 8d4cf6b6acb59 # scripts/dtc: use pkg-config to include <yaml.h> in 
>>>>> non-standard path
>>>>> b9bf9ace5ae90 # scripts/dtc: Update to upstream version v1.6.0-11- 
>>>>> g9d7888cbf19c
>>>>> 69a883b6f5ac0 # scripts/dtc: dtx_diff - make help text formatting 
>>>>> consistent
>>>>> 8f829108b8aed # scripts/dtc: only append to HOST_EXTRACFLAGS 
>>>>> instead of overwriting
>>>>> b39b4342ac495 # scripts/dtc: Update to upstream version v1.6.0-31- 
>>>>> gcbca977ea121
>>>>> 93c6424c486b3 # scripts: dtc: Fetch fdtoverlay.c from external DTC 
>>>>> project
>>>>> 0dd574a1d75c3 # scripts/dtc: Update to upstream version v1.6.0-51- 
>>>>> g183df9e9c2b9
>>>>> ec38b5df8a231 # scripts: dtc: Build fdtoverlay tool
>>>>> a0c8c431411f5 # scripts: dtc: Remove the unused fdtdump.c file
>>>>> e7dc653d4e890 # scripts/dtc: Add missing fdtoverlay to gitignore
>>>>> d2bf5d2e3f09c # scripts/dtc: Update to upstream version v1.6.1-19- 
>>>>> g0a3a9d3449c8
>>>>> a60878f5532d0 # scripts/dtc: dtx_diff: remove broken example from 
>>>>> help text
>>>>> 8b739d8658a9b # scripts/dtc: Call pkg-config POSIXly correct
>>>>> b6eeafa67df00 # scripts/dtc: Update to upstream version v1.6.1-63- 
>>>>> g55778a03df61
>>>>> f96cc4c787588 # scripts/dtc: Update to upstream version v1.6.1-66- 
>>>>> gabbd523bae6e
>>>>> 09ab9c092ef2b # scripts/dtc: Update to upstream version v1.7.0-93- 
>>>>> g1df7b047fe43
>>>>> ded8a5a498f2d # scripts/dtc: Update to upstream version v1.7.0-95- 
>>>>> gbcd02b523429
>>>>> ee6ff6fca7e71 # scripts/dtc: Update to upstream version v1.7.2-35- 
>>>>> g52f07dcca47c
>>>>>
>>>>> This also includes forward port of U-Boot commit
>>>>> e8c2d25845c7 ("libfdt: Revert 6dcb8ba4 from upstream libfdt")
>>>>> to avoid binary size growth.
>>>>>
>>>>> Signed-off-by: Marek Vasut <marek.vasut+renesas at mailbox.org>
>>>>> ---
>>>>> Cc: Adriano Cordova <adrianox at gmail.com>
>>>>> Cc: Andrew Goodbody <andrew.goodbody at linaro.org>
>>>>> Cc: Christian Marangi <ansuelsmth at gmail.com>
>>>>> Cc: Heinrich Schuchardt <xypron.glpk at gmx.de>
>>>>> Cc: Ilias Apalodimas <ilias.apalodimas at linaro.org>
>>>>> Cc: Patrice Chotard <patrice.chotard at foss.st.com>
>>>>> Cc: Sam Edwards <cfsworks at gmail.com>
>>>>> Cc: Simon Glass <sjg at chromium.org>
>>>>> Cc: Tom Rini <trini at konsulko.com>
>>>>> Cc: u-boot at lists.denx.de
>>>>
>>>> We observed several boot failures on K3 platforms since the addition of
>>>> this patch at the R5 SPL stage, the issue seems to be the newly added
>>>> check for alignment in fdt_check_header in scripts/dtc/libfdt/fdt.c:95
>>>> but the binaries generated don't have 8-byte aligned FDTs.
>>>>
>>>> I have been able to reproduce the issue on AM62p EVM with a clean
>>>> working directory (this is important since any minor change to the
>>>> SPL binary size such as by the added "-dirty" tag could make the 
>>>> address
>>>> aligned) and GCC 13.3[1].
>>>>
>>>> Are we ensuring the fdt present in the SPL binary is properly aligned?
>>
>> Yes, the device tree must be 8-byte aligned, this is a requirement of
>> the device tree spec itself that we had been lax over until now.
> We found iMX95/iMX94 EVK boards are broken after this fdt lib update. 
> The root cause is default value of CONFIG_SPL_OF_LIBFDT_ASSUME_MASK is 
> 0xff. In this update, fdt_check_node_offset_ is changed as below to 
> check the CONFIG_SPL_OF_LIBFDT_ASSUME_MASK. When it is 0xff, 
> fdt_check_node_offset_ will skip offset check.
> 
> 
>   int fdt_check_node_offset_(const void *fdt, int offset)
>   {
> -    if ((offset < 0) || (offset % FDT_TAGSIZE)
> -        || (fdt_next_tag(fdt, offset, &offset) != FDT_BEGIN_NODE))
> +    if (!can_assume(VALID_INPUT)
> +        && ((offset < 0) || (offset % FDT_TAGSIZE)))
> +        return -FDT_ERR_BADOFFSET;
> +
> +    if (fdt_next_tag(fdt, offset, &offset) != FDT_BEGIN_NODE)
>           return -FDT_ERR_BADOFFSET;
> 
> This cause a problem to SCMI agent uclass driver. In scmi_bind_protocols 
> function, a ofnode_null() is used when creating scmi-base.0 device to 
> bind with driver. This null node which has offset value -1 can 
> successfully pass the fdt_check_node_offset_, so causes crash in 
> device_probe()->dev_power_domain_on() when finding power-domains phandle.
> 
> I notice the default value of CONFIG_OF_LIBFDT_ASSUME_MASK used by u- 
> boot is 0. So why does SPL have different default value? Should we 
> change the SPL default value to 0 to align with u-boot? Otherwise, any 
> idea for fix.
Could ti be that you need a fix similar to:

3c43ca3025ef ("clk: fixed_rate: Avoid calling dev_read_*() if 
CONFIG_OF_PLATDATA=y")

Maybe there is some node missing and you are trying to look it up and 
use it ?


More information about the U-Boot mailing list