Re: (EXT) Re: [PATCH] arm64: dts: imx8mm-venice-gw73xx-0x: add dt overlays for serial modes

From: Tim Harvey
Date: Tue Jan 11 2022 - 12:53:50 EST


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.

> * 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.

Best regards,

Tim