Allow overlays to be applied to any DTB. This adds around ~40% to the
total size of the DTB files on average.
Signed-off-by: Kory Maincent (TI) <kory.maincent@bootlin.com>
--
Enable overlays for all dtb similarly to what has been done for arch64
TI boards, but we could only enable overlays for Beagle Bone and
variant boards if required.
---
arch/arm/boot/dts/ti/omap/Makefile | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/arm/boot/dts/ti/omap/Makefile b/arch/arm/boot/dts/ti/omap/Makefile
index 14e500846875e..52df04328aff2 100644
--- a/arch/arm/boot/dts/ti/omap/Makefile
+++ b/arch/arm/boot/dts/ti/omap/Makefile
@@ -175,3 +175,6 @@ dtb-$(CONFIG_SOC_TI81XX) += \
dm8148-t410.dtb \
dm8168-evm.dtb \
dra62x-j5eco-evm.dtb
+
+# Enable support for device-tree overlays
+DTC_FLAGS := -@
--
2.43.0
> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) <kory.maincent@bootlin.com>: > > Allow overlays to be applied to any DTB. This adds around ~40% to the > total size of the DTB files on average. Is this unconditionally enabled or can it be turned off by some CONFIG? We have our own defconfig so I would not worry if if is enabled in omap2plus_defconfig and disabled in ours. We have several devices where the boot loader can't handle overlays (never touch a working boot-loader :) So this seems to only contribute to build and load time without benefit. BR, Nikolaus
On Thu, 12 Feb 2026 16:49:43 +0100 "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) <kory.maincent@bootlin.com>: > > > > Allow overlays to be applied to any DTB. This adds around ~40% to the > > total size of the DTB files on average. > > Is this unconditionally enabled or can it be turned off by some CONFIG? We have > our own defconfig so I would not worry if if is enabled in omap2plus_defconfig > and disabled in ours. > > We have several devices where the boot loader can't handle overlays (never touch > a working boot-loader :) So this seems to only contribute to build and load time > without benefit. > As long as you do not add overlays, the bootloader does not care. I would like to simply carry around the 1-bit mmc overlay for one broken board. That would help me. So I think there is a benefit but nobody forces you to use it. Regards, Andreas
> Am 12.02.2026 um 17:47 schrieb Andreas Kemnade <andreas@kemnade.info>: > > On Thu, 12 Feb 2026 16:49:43 +0100 > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > >>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) <kory.maincent@bootlin.com>: >>> >>> Allow overlays to be applied to any DTB. This adds around ~40% to the >>> total size of the DTB files on average. >> >> Is this unconditionally enabled or can it be turned off by some CONFIG? We have >> our own defconfig so I would not worry if if is enabled in omap2plus_defconfig >> and disabled in ours. >> >> We have several devices where the boot loader can't handle overlays (never touch >> a working boot-loader :) So this seems to only contribute to build and load time >> without benefit. >> > As long as you do not add overlays, the bootloader does not care. I would > like to simply carry around the 1-bit mmc overlay for one broken board. > That would help me. So I think there is a benefit but nobody forces > you to use it. Well, it does not force to use the really good feature, but it forces to add ~40% more file size and some more compile time, if I understand it correctly. This makes me think that it should be an option to turn it off completely (and not just ignore it by the boot loader). BR, Nikolaus
On Thu, 12 Feb 2026 17:55:43 +0100 "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > Am 12.02.2026 um 17:47 schrieb Andreas Kemnade <andreas@kemnade.info>: > > > > On Thu, 12 Feb 2026 16:49:43 +0100 > > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > > >>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) <kory.maincent@bootlin.com>: > >>> > >>> Allow overlays to be applied to any DTB. This adds around ~40% to the > >>> total size of the DTB files on average. > >> > >> Is this unconditionally enabled or can it be turned off by some CONFIG? We have > >> our own defconfig so I would not worry if if is enabled in omap2plus_defconfig > >> and disabled in ours. > >> > >> We have several devices where the boot loader can't handle overlays (never touch > >> a working boot-loader :) So this seems to only contribute to build and load time > >> without benefit. > >> > > As long as you do not add overlays, the bootloader does not care. I would > > like to simply carry around the 1-bit mmc overlay for one broken board. > > That would help me. So I think there is a benefit but nobody forces > > you to use it. > > Well, it does not force to use the really good feature, but it forces to add > ~40% more file size and some more compile time, if I understand it correctly. > Compile time, hardly measurable even if you just do make dtbs. Size on disk: a) if it lives around in a /boot partitions with kernels and initrams in it, then we are around 1% more space needed. b) if it has separate partitions maybe on some mtd: Looking around: GTA04 has quite some headroom left. Usage is still <50% even with symbols enabled. But on the other no one else seems to enable that besides for devices with open expansion boards carrying "hats". So overall, should we really be the exception? Regards, Andreas
Hi, > Am 12.02.2026 um 23:19 schrieb Andreas Kemnade <andreas@kemnade.info>: > > On Thu, 12 Feb 2026 17:55:43 +0100 > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > >>> Am 12.02.2026 um 17:47 schrieb Andreas Kemnade <andreas@kemnade.info>: >>> >>> On Thu, 12 Feb 2026 16:49:43 +0100 >>> "H. Nikolaus Schaller" <hns@goldelico.com> wrote: >>> >>>>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) <kory.maincent@bootlin.com>: >>>>> >>>>> Allow overlays to be applied to any DTB. This adds around ~40% to the >>>>> total size of the DTB files on average. >>>> >>>> Is this unconditionally enabled or can it be turned off by some CONFIG? We have >>>> our own defconfig so I would not worry if if is enabled in omap2plus_defconfig >>>> and disabled in ours. >>>> >>>> We have several devices where the boot loader can't handle overlays (never touch >>>> a working boot-loader :) So this seems to only contribute to build and load time >>>> without benefit. >>>> >>> As long as you do not add overlays, the bootloader does not care. I would >>> like to simply carry around the 1-bit mmc overlay for one broken board. >>> That would help me. So I think there is a benefit but nobody forces >>> you to use it. >> >> Well, it does not force to use the really good feature, but it forces to add >> ~40% more file size and some more compile time, if I understand it correctly. >> > Compile time, hardly measurable even if you just do make dtbs. > > Size on disk: > a) if it lives around in a /boot partitions with kernels and initrams in it, > then we are around 1% more space needed. Ah, I see. I was too focussed on the "adds around ~40% to the total size of the DTB files". For the Letux arm distro all DTBs are around 8.1 MB at the moment so it will grow not that much (there are non-TI devices included). So you are right, it is ~1% of the total if the kernel image is counted. Therefore, space should not be something we should be too concerned about (although I remember discussions for driver code where every single byte did count). On the other hand this increases load time from (sometimes slow) µSD for a specific DTB by 40%. That should at least be discussed. BR, Nikolaus
On Fri, 13 Feb 2026 06:33:46 +0100 "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > Hi, > > > Am 12.02.2026 um 23:19 schrieb Andreas Kemnade <andreas@kemnade.info>: > > > > On Thu, 12 Feb 2026 17:55:43 +0100 > > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > > >>> Am 12.02.2026 um 17:47 schrieb Andreas Kemnade <andreas@kemnade.info>: > >>> > >>> On Thu, 12 Feb 2026 16:49:43 +0100 > >>> "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > >>> > >>>>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) <kory.maincent@bootlin.com>: > >>>>> > >>>>> Allow overlays to be applied to any DTB. This adds around ~40% to the > >>>>> total size of the DTB files on average. > >>>> > >>>> Is this unconditionally enabled or can it be turned off by some CONFIG? We have > >>>> our own defconfig so I would not worry if if is enabled in omap2plus_defconfig > >>>> and disabled in ours. > >>>> > >>>> We have several devices where the boot loader can't handle overlays (never touch > >>>> a working boot-loader :) So this seems to only contribute to build and load time > >>>> without benefit. > >>>> > >>> As long as you do not add overlays, the bootloader does not care. I would > >>> like to simply carry around the 1-bit mmc overlay for one broken board. > >>> That would help me. So I think there is a benefit but nobody forces > >>> you to use it. > >> > >> Well, it does not force to use the really good feature, but it forces to add > >> ~40% more file size and some more compile time, if I understand it correctly. > >> > > Compile time, hardly measurable even if you just do make dtbs. > > > > Size on disk: > > a) if it lives around in a /boot partitions with kernels and initrams in it, > > then we are around 1% more space needed. > > Ah, I see. I was too focussed on the "adds around ~40% to the total size of the DTB files". > > For the Letux arm distro all DTBs are around 8.1 MB at the moment so it will grow not that much > (there are non-TI devices included). > > So you are right, it is ~1% of the total if the kernel image is counted. > > Therefore, space should not be something we should be too concerned about (although I remember > discussions for driver code where every single byte did count). > > On the other hand this increases load time from (sometimes slow) µSD for a specific DTB by 40%. > That should at least be discussed. > so also 1% of total loading time. And symbols can be stripped away during e.g. deployment. fdtput -r some_board.dtb /__symbols__ I am not strongly against it. It is just we are doing something unusual here. Are there reasons why it is unusual I do not understand? I think it can be useful for every board in some situations. For the ones with can carry a head, they are the most useful. What was the reasoning to have it enabled for k3 for every board? K3 and Broadcom-64bit seem to be the only arch doing that. Broadcom mostly many RPis, some routers. Regards, Andreas
On Thu, Feb 12, 2026 at 4:19 PM Andreas Kemnade <andreas@kemnade.info> wrote: > > On Thu, 12 Feb 2026 17:55:43 +0100 > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > > > Am 12.02.2026 um 17:47 schrieb Andreas Kemnade <andreas@kemnade.info>: > > > > > > On Thu, 12 Feb 2026 16:49:43 +0100 > > > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > > > > >>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) <kory.maincent@bootlin.com>: > > >>> > > >>> Allow overlays to be applied to any DTB. This adds around ~40% to the > > >>> total size of the DTB files on average. > > >> > > >> Is this unconditionally enabled or can it be turned off by some CONFIG? We have > > >> our own defconfig so I would not worry if if is enabled in omap2plus_defconfig > > >> and disabled in ours. > > >> > > >> We have several devices where the boot loader can't handle overlays (never touch > > >> a working boot-loader :) So this seems to only contribute to build and load time > > >> without benefit. > > >> > > > As long as you do not add overlays, the bootloader does not care. I would > > > like to simply carry around the 1-bit mmc overlay for one broken board. > > > That would help me. So I think there is a benefit but nobody forces > > > you to use it. > > > > Well, it does not force to use the really good feature, but it forces to add > > ~40% more file size and some more compile time, if I understand it correctly. > > > Compile time, hardly measurable even if you just do make dtbs. > > Size on disk: > a) if it lives around in a /boot partitions with kernels and initrams in it, > then we are around 1% more space needed. > > b) if it has separate partitions maybe on some mtd: Looking around: GTA04 > has quite some headroom left. Usage is still <50% even with symbols > enabled. > > But on the other no one else seems to enable that besides for devices with > open expansion boards carrying "hats". So overall, should we really be the > exception? Do we want to maybe transition like TI did for k3? Start with board specific DTC_FLAGS flags for specific boards: and then just enabling overlays by default : https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch/arm64/boot/dts/ti/Makefile?id=bca4146b1f66dbca07591bfd6ad695c699b5a093 If we do board-specific, all the "Beagle" related items can be auto enabled `-@`.. Regards, -- Robert Nelson https://rcn-ee.com/
On Thu, 12 Feb 2026 21:16:05 -0600 Robert Nelson <robertcnelson@gmail.com> wrote: > On Thu, Feb 12, 2026 at 4:19 PM Andreas Kemnade <andreas@kemnade.info> wrote: > > > > On Thu, 12 Feb 2026 17:55:43 +0100 > > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > > > > > Am 12.02.2026 um 17:47 schrieb Andreas Kemnade <andreas@kemnade.info>: > > > > > > > > On Thu, 12 Feb 2026 16:49:43 +0100 > > > > "H. Nikolaus Schaller" <hns@goldelico.com> wrote: > > > > > > > >>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) > > > >>> <kory.maincent@bootlin.com>: > > > >>> > > > >>> Allow overlays to be applied to any DTB. This adds around ~40% to the > > > >>> total size of the DTB files on average. > > > >> > > > >> Is this unconditionally enabled or can it be turned off by some > > > >> CONFIG? We have our own defconfig so I would not worry if if is > > > >> enabled in omap2plus_defconfig and disabled in ours. > > > >> > > > >> We have several devices where the boot loader can't handle overlays > > > >> (never touch a working boot-loader :) So this seems to only contribute > > > >> to build and load time without benefit. > > > >> > > > > As long as you do not add overlays, the bootloader does not care. I > > > > would like to simply carry around the 1-bit mmc overlay for one broken > > > > board. That would help me. So I think there is a benefit but nobody > > > > forces you to use it. > > > > > > Well, it does not force to use the really good feature, but it forces to > > > add ~40% more file size and some more compile time, if I understand it > > > correctly. > > Compile time, hardly measurable even if you just do make dtbs. > > > > Size on disk: > > a) if it lives around in a /boot partitions with kernels and initrams in it, > > then we are around 1% more space needed. > > > > b) if it has separate partitions maybe on some mtd: Looking around: GTA04 > > has quite some headroom left. Usage is still <50% even with symbols > > enabled. > > > > But on the other no one else seems to enable that besides for devices with > > open expansion boards carrying "hats". So overall, should we really be the > > exception? > > Do we want to maybe transition like TI did for k3? > > Start with board specific DTC_FLAGS flags for specific boards: > > and then just enabling overlays by default : > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch/arm64/boot/dts/ti/Makefile?id=bca4146b1f66dbca07591bfd6ad695c699b5a093 > > If we do board-specific, all the "Beagle" related items can be auto > enabled `-@`.. Yes, I will move on to this solution for now to avoid too many complaints about the devicetree size increases. Regards, -- Köry Maincent, Bootlin Embedded Linux and kernel engineering https://bootlin.com
Hi Kory, > Am 16.02.2026 um 16:11 schrieb Kory Maincent <kory.maincent@bootlin.com>: > >>>>> >>>>>>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) >>>>>>> <kory.maincent@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? BR, Nikolaus
On Tue, 17 Feb 2026 09:58:04 +0100 H. Nikolaus Schaller <hns@goldelico.com> wrote: > Hi Kory, > > > Am 16.02.2026 um 16:11 schrieb Kory Maincent <kory.maincent@bootlin.com>: > > > >>>>> > >>>>>>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) > >>>>>>> <kory.maincent@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? > if it is your letux_defconfig, then it does not require anything else. I think something already enables symbols in your tree. Look with fdtdump at the generated dtbs for a __symbols__ node. If it is there, then it is enabled. Regards, Andreas
On Tue, 17 Feb 2026 09:58:04 +0100 H. Nikolaus Schaller <hns@goldelico.com> wrote: > Hi Kory, > > > Am 16.02.2026 um 16:11 schrieb Kory Maincent <kory.maincent@bootlin.com>: > > > >>>>> > >>>>>>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) > >>>>>>> <kory.maincent@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 Regards, -- Köry Maincent, Bootlin Embedded Linux and kernel engineering https://bootlin.com
Hi Kory, > Am 17.02.2026 um 10:36 schrieb Kory Maincent <kory.maincent@bootlin.com>: > > On Tue, 17 Feb 2026 09:58:04 +0100 > H. Nikolaus Schaller <hns@goldelico.com> wrote: > >> Hi Kory, >> >>> Am 16.02.2026 um 16:11 schrieb Kory Maincent <kory.maincent@bootlin.com>: >>> >>>>>>> >>>>>>>>> Am 12.02.2026 um 16:26 schrieb Kory Maincent (TI) >>>>>>>>> <kory.maincent@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
On 12/02/2026 16:26, Kory Maincent (TI) wrote: > Allow overlays to be applied to any DTB. This adds around ~40% to the > total size of the DTB files on average. > > Signed-off-by: Kory Maincent (TI) <kory.maincent@bootlin.com> > -- > > Enable overlays for all dtb similarly to what has been done for arch64 > TI boards, but we could only enable overlays for Beagle Bone and > variant boards if required. You mixed changelog with commit with invalid separator thus there is no final SoB. Best regards, Krzysztof
On Thu, 12 Feb 2026 16:42:12 +0100 Krzysztof Kozlowski <krzk@kernel.org> wrote: > On 12/02/2026 16:26, Kory Maincent (TI) wrote: > > Allow overlays to be applied to any DTB. This adds around ~40% to the > > total size of the DTB files on average. > > > > Signed-off-by: Kory Maincent (TI) <kory.maincent@bootlin.com> > > -- > > > > Enable overlays for all dtb similarly to what has been done for arch64 > > TI boards, but we could only enable overlays for Beagle Bone and > > variant boards if required. > > You mixed changelog with commit with invalid separator thus there is no > final SoB. Arf forgot one '-'. Sorry for that. Regards, -- Köry Maincent, Bootlin Embedded Linux and kernel engineering https://bootlin.com
© 2016 - 2026 Red Hat, Inc.