[RFC PATCH] imx: skip unused compatible strings in drivers
Anatolij Gustschin
agust at denx.de
Tue May 26 15:15:16 CEST 2020
On Tue, 26 May 2020 14:42:08 +0200
Marek Vasut marex at denx.de wrote:
> On 5/26/20 2:40 PM, Peng Fan wrote:
> >> Subject: Re: [RFC PATCH] imx: skip unused compatible strings in drivers
> >>
> >> On Tue, 26 May 2020 13:25:00 +0200
> >> Marek Vasut marex at denx.de wrote:
> >>
> >>> On 5/26/20 1:12 PM, Soeren Moch wrote:
> >>>> On 25.05.20 22:24, Anatolij Gustschin wrote:
> >>>>> Converting to DM increases binary size and breaks building some
> >>>>> boards (i.e. tbs2910, gcc 9.2). The approach to address this issue
> >>>>> via cutting off unused properties/nodes in device tree via custom
> >>>>> u-boot.dtsi was not welcome, even if the affected boards do not
> >>>>> pass the built-in device tree to the kernel.
> >>>> But there is CONFIG_OF_REMOVE_PROPS="dmas dma-names
> >> interrupt-parent
> >>>> interrupts interrupts-extended interrupt-names interrupt-map
> >>>> interrupt-map-mask" in tbs2910_defconfig. So removing properties is
> >>>> already done via this config option. Removing nodes is not
> >>>> implemented (yet? AFAIK). But would be welcome if someone implements
> >>>> this in a similar way, I think.
> >>>
> >>> Why don't we turn this the other way around -- put the { compat string
> >>> , driver } tuple list into a U-Boot linker list, then filter this
> >>> linker list against a DT which will be used for the platform (what if
> >>> there are multiple DTs?), and then scrub all unreferrenced symbols.
> >>
> >> This might be a topic again when new bloat causes build breakage again. For
> >> now I've succeeded to build the tbs2910 board with default CI tool chain
> >> without this patch (by making DM_VIDEO parts optional). Stripping unused
> >> compatible entries doesn't save much here (around 800 bytes). So the
> >> question is if it is worth the effort to implement such scrubbing.
> >
> > I vote for this. Whether u-boot or SPL, currently the size is larger and larger.
>
> Can you send a patch prototyping this ?
I'm not working on this, so do not expect patches from me, at least
not in the near future.
--
Anatolij
More information about the U-Boot
mailing list