Am Dienstag, 11. Januar 2022, 18:53:29 CET schrieb Tim Harvey: > On Mon, Jan 10, 2022 at 11:20 PM Alexander Stein > > <alexander.stein@xxxxxxxxxxxxxxx> wrote: > > Am Dienstag, 11. Januar 2022, 01:00:21 CET schrieb Tim Harvey: > > > [SNIP] > > > > > > > diff --git a/arch/arm64/boot/dts/freescale/Makefile > > > > b/arch/arm64/boot/dts/freescale/Makefile index > > > > a14a6173b765..5ec8d59347b6 > > > > 100644 > > > > --- a/arch/arm64/boot/dts/freescale/Makefile > > > > +++ b/arch/arm64/boot/dts/freescale/Makefile > > > > @@ -44,6 +44,9 @@ dtb-$(CONFIG_ARCH_MXC) += > > > > imx8mm-var-som-symphony.dtb > > > > > > > > dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw71xx-0x.dtb > > > > dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw72xx-0x.dtb > > > > dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw73xx-0x.dtb > > > > > > > > +dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw73xx-0x-rs232-rts.dtbo > > > > +dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw73xx-0x-rs422.dtbo > > > > +dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw73xx-0x-rs485.dtbo > > > > > > > > dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw7901.dtb > > > > dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw7902.dtb > > > > dtb-$(CONFIG_ARCH_MXC) += imx8mn-beacon-kit.dtb > > > > > > [SNIP] > > > I'm mostly interested to see if my approach to dt fragments here and > > > the naming of the files makes sense to others. > > > > > > This patch causes the kernel to build dtbo files for: > > > arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x-rs232-rts.dtbo > > > arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x-rs422.dtbo > > > arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x-rs485.dtbo > > > > > > The intention is that these files are used by boot firmware (U-Boot) > > > to adjust the dtb before passing it to the kernel. > > > > Hi Tim, > > > > do these dtbo actually work? I'm wondering because I was trying to > > useoverlays myself and noticed that the had to be compiled with -@ for > > u-boot to be able > > to apply them. Apparently there are 2 possibilities: > Alexander, > > Yes, they work, but I do manually set DTC_FLAGS=-@ when building > kernel dtbs to make them work. I see, I expected something like this. That's why I responded to you. > > * Set "DTC_FLAGS_[dtb] := -@" yourself > > See https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/ > > commit/?id=e426d63e752bdbe7d5ba2d872319dde9ab844a07 > > > > * Use dedicated overlay target > > See https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/ > > commit/?id=15d16d6dadf6947ac7f9a686c615995c5a426ce2 > > > > You use neither of them. IIRC just naming the target file .dtbo will not > > apply symbols (-Q) during dtc call. Can you verify using 'V=1' > > Also I'm wondering which way is the best to go. > > I wasn't aware there was a way to do this via Makefiles. It seems that > perhaps Rob's approach with 'kbuild: Add generic rule to apply > fdtoverlay' is a way to avoid having to add them all manually in the > first approach? I must admit I'm not sure how to use that. I tried using this myself for my custom board. I feel it is a bit cumbersome to get it right. See https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/ arch/arm64/boot/dts/xilinx/Makefile for an example. Essentially you define your .dtb as before and add another target (e.g. sm- k26-revA-sck-kv-g-revA-dtbs) where you add your .dtbo _after_ the original .dtb. This target needs to be added to 'dtb-y' as before. I suspect this way is needed to check the .dtbo against the base .dtb if it actually matches. HTH Alexander