[PATCH 1/5] ARM: dts: ti: Enable overlays for all DTB files
H. Nikolaus Schaller
hns at goldelico.com
Tue Feb 17 23:28:06 PST 2026
Hi Kory,
> Am 17.02.2026 um 10:36 schrieb Kory Maincent <kory.maincent at bootlin.com>:
>
> On Tue, 17 Feb 2026 09:58:04 +0100
> H. Nikolaus Schaller <hns at goldelico.com> wrote:
>
>> Hi Kory,
>>
>>> Am 16.02.2026 um 16:11 schrieb Kory Maincent <kory.maincent at bootlin.com>:
>>>
>>>>>>>
>>>>>>>>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI)
>>>>>>>>> <kory.maincent at bootlin.com>:
>>>>>>>>>
>>>>>>>>> Allow overlays to be applied to any DTB. This adds around ~40% to the
>>>>>>>>> total size of the DTB files on average.
>>>
>>> Yes, I will move on to this solution for now to avoid too many complaints
>>> about the devicetree size increases.
>>
>> I have done some experimentation with this patch (on top of v6.19 and our
>> private defconfig) but could not find any DTB size increase.
>>
>> Does it require another patch or CONFIG change?
>
> No, but maybe you had already the "DTC_FLAGS=-@" option enabled while building
> you image.
> This options add the "__symbols__" node listing the symbols to the built
> devicetree:
> $ fdtdump arch/arm/boot/dts/ti/omap/am335x-bonegreen-eco.dtb 2>/dev/null | grep symbols
Yes, indeed there is a __symbols__ node in all .dtb I have checked.
With make V=1 (on v6.19.0 + some local extensions) I see
./scripts/dtc/dtc -o arch/arm/boot/dts/ti/omap/am335x-bonegreen.dtb -b 0 -iarch/arm/boot/dts/ti/omap/ -i./scripts/dtc/include-prefixes -Wno-interrupt_provider --symbol -Wno-unique_unit_address -Wno-unit_address_vs_reg -Wno-avoid_unnecessary_addr_size -Wno-alias_paths -Wno-graph_child_address -Wno-simple_bus_reg -Wno-unique_unit_address -Wno-unit_address_vs_reg -Wno-avoid_unnecessary_addr_size -Wno-alias_paths -Wno-graph_child_address -Wno-interrupt_map -Wno-simple_bus_reg -d arch/arm/boot/dts/ti/omap/.am335x-bonegreen.dtb.d.dtc.tmp arch/arm/boot/dts/ti/omap/.am335x-bonegreen.dtb.dts.tmp
So --symbol is already included, even without your patch.
With your patch I see:
./scripts/dtc/dtc -o arch/arm/boot/dts/ti/omap/am335x-bonegreen.dtb -b 0 -iarch/arm/boot/dts/ti/omap/ -i./scripts/dtc/include-prefixes -@ -Wno-interrupt_provider --symbol -Wno-unique_unit_address -Wno-unit_address_vs_reg -Wno-avoid_unnecessary_addr_size -Wno-alias_paths -Wno-graph_child_address -Wno-simple_bus_reg -Wno-unique_unit_address -Wno-unit_address_vs_reg -Wno-avoid_unnecessary_addr_size -Wno-alias_paths -Wno-graph_child_address -Wno-interrupt_map -Wno-simple_bus_reg -d arch/arm/boot/dts/ti/omap/.am335x-bonegreen.dtb.d.dtc.tmp arch/arm/boot/dts/ti/omap/.am335x-bonegreen.dtb.dts.tmp
Here we have -@ and --symbol (synonyms for dtc).
Well, I finally could trace it down to a malicious infection of our LetuxOS tree
by some ODROID kernel patch to scripts/Makefile.lib (0ac84640f12c). That patch
globally modifies the DTC_FLAGS mechanism and permanently adds --symbol instead of adding
-@ in the arch/board specific Makefile like you propose here.
So now I know why I didn't see any increase in size (because it was never reduced).
With removing this I now get 67179 bytes as default for am335x-bonegreen.dtb.
And with your patch I get (back) to 94260 bytes so I can confirm a 40.3% increase.
Please proceed as planned (I don't think it necessarily has to be limited to
motherboards with an expansion card system, although that would be a good
indication of its usefulness), and thank you for bringing our local issue
to my attention.
BR and thanks,
Nikolaus
More information about the linux-arm-kernel
mailing list