Re: [PATCH V6 0/6] dt: build overlays

From: Frank Rowand
Date: Tue Jan 26 2021 - 07:23:29 EST


On 1/22/21 4:50 AM, Viresh Kumar wrote:
> Hi Frank/Rob,
>
> This patchset makes necessary changes to the kernel to add support for
> building overlays (%.dtbo) and the required fdtoverlay tool. This also
> builds static_test.dtb using most of the existing overlay tests present
> in drivers/of/unittest-data/ for better test coverage.
>
> Note that in order for anyone to test this stuff, you need to manually
> run the ./update-dtc-source.sh script once to fetch the necessary
> changes from the external DTC project (i.e. fdtoverlay.c and this[1]
> patch).
>

> Also note that Frank has already shared his concerns towards the error
> reporting done by fdtoverlay tool [2], and David said it is not that
> straight forward to make such changes in fdtoverlay. I have still
> included the patch in this series for completeness.

I started to reply to this email with questions for David about how to
improve the fdtoverlay error reporting. But then decided that instead
of trying to paraphrase the comments in v4 of this patch series, it
would be more efficient to ask in the v4 thread. So my questions are
over there...

-Frank

>
> FWIW, with fdtoverlay we generate a new build warning now, not sure why
> though:
>
> drivers/of/unittest-data/tests-interrupts.dtsi:20.5-28: Warning (interrupts_property): /testcase-data/testcase-device2:#interrupt-cells: size is (4), expected multiple of 8
>
> V6:
> - Create separate rules for dtbo-s and separate entries in .gitignore in
> 4/6 (Masahiro).
> - A new file layout for handling all overlays for existing and new tests
> 5/6 (Frank).
> - Include overlay.dts as well now in 6/6 (Frank).
>
> V5:
>
> - Don't reuse DTC_SOURCE for fdtoverlay.c in patch 1/5 (Frank).
>
> - Update .gitignore and scripts/Makefile.dtbinst, drop dtbo-y syntax and
> DTC_FLAGS += -@ in patch 4/5 (Masahiro).
>
> - Remove the intermediate dtb, rename output to static_test.dtb, don't
> use overlay.dtb and overlay_base.dtb for static builds, improved
> layout/comments in Makefile for patch 5/5 (Frank).
>
> --
> Viresh
>
> [1] https://github.com/dgibson/dtc/commit/163f0469bf2ed8b2fe5aa15bc796b93c70243ddc
> [2] https://lore.kernel.org/lkml/74f8aa8f-ffab-3b0f-186f-31fb7395ebbb@xxxxxxxxx/
>
> Viresh Kumar (6):
> scripts: dtc: Fetch fdtoverlay.c from external DTC project
> scripts: dtc: Build fdtoverlay tool
> scripts: dtc: Remove the unused fdtdump.c file
> kbuild: Add support to build overlays (%.dtbo)
> of: unittest: Create overlay_common.dtsi and testcases_common.dtsi
> of: unittest: Statically apply overlays using fdtoverlay
>
> .gitignore | 1 +
> Makefile | 5 +-
> drivers/of/unittest-data/Makefile | 51 ++++++
> drivers/of/unittest-data/overlay_base.dts | 90 +---------
> drivers/of/unittest-data/overlay_common.dtsi | 91 ++++++++++
> drivers/of/unittest-data/static_base.dts | 5 +
> drivers/of/unittest-data/testcases.dts | 17 +-
> .../of/unittest-data/testcases_common.dtsi | 18 ++
> scripts/Makefile.dtbinst | 3 +
> scripts/Makefile.lib | 5 +
> scripts/dtc/Makefile | 6 +-
> scripts/dtc/fdtdump.c | 163 ------------------
> scripts/dtc/update-dtc-source.sh | 3 +-
> 13 files changed, 187 insertions(+), 271 deletions(-)
> create mode 100644 drivers/of/unittest-data/overlay_common.dtsi
> create mode 100644 drivers/of/unittest-data/static_base.dts
> create mode 100644 drivers/of/unittest-data/testcases_common.dtsi
> delete mode 100644 scripts/dtc/fdtdump.c
>