mbox series

[V7,0/6] dt: build overlays

Message ID cover.1611904394.git.viresh.kumar@linaro.org
Headers show
Series dt: build overlays | expand

Message

Viresh Kumar Jan. 29, 2021, 7:24 a.m. UTC
Hi,

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

I have tested this patchset for static and runtime testing (on Hikey
board) and no issues were reported.

V7:
- Add a comment in scripts/dtc/Makefile
- Add Ack from Masahiro for patch 4/6.
- Drop word "merge" from commit log of 2/6.
- Split apply_static_overlay, static_test.dtb, and static_base.dts into
  two parts to handle overlay_base.dts and testcases.dts separately.

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@gmail.com/

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             |  56 ++++++
 drivers/of/unittest-data/overlay_base.dts     |  90 +---------
 drivers/of/unittest-data/overlay_common.dtsi  |  91 ++++++++++
 drivers/of/unittest-data/static_base_1.dts    |   4 +
 drivers/of/unittest-data/static_base_2.dts    |   4 +
 drivers/of/unittest-data/testcases.dts        |  18 +-
 .../of/unittest-data/testcases_common.dtsi    |  19 ++
 .../of/unittest-data/tests-interrupts.dtsi    |   7 -
 scripts/Makefile.dtbinst                      |   3 +
 scripts/Makefile.lib                          |   5 +
 scripts/dtc/Makefile                          |   8 +-
 scripts/dtc/fdtdump.c                         | 163 ------------------
 scripts/dtc/update-dtc-source.sh              |   3 +-
 15 files changed, 204 insertions(+), 273 deletions(-)
 create mode 100644 drivers/of/unittest-data/overlay_common.dtsi
 create mode 100644 drivers/of/unittest-data/static_base_1.dts
 create mode 100644 drivers/of/unittest-data/static_base_2.dts
 create mode 100644 drivers/of/unittest-data/testcases_common.dtsi
 delete mode 100644 scripts/dtc/fdtdump.c


base-commit: 6ee1d745b7c9fd573fba142a2efdad76a9f1cb04
-- 
2.25.0.rc1.19.g042ed3e048af

Comments

Rob Herring (Arm) Feb. 4, 2021, 3:58 p.m. UTC | #1
On Fri, 29 Jan 2021 12:54:04 +0530, Viresh Kumar wrote:
> Hi,

> 

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

> 

> I have tested this patchset for static and runtime testing (on Hikey

> board) and no issues were reported.

> 

> V7:

> - Add a comment in scripts/dtc/Makefile

> - Add Ack from Masahiro for patch 4/6.

> - Drop word "merge" from commit log of 2/6.

> - Split apply_static_overlay, static_test.dtb, and static_base.dts into

>   two parts to handle overlay_base.dts and testcases.dts separately.

> 

> 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@gmail.com/

> 

> 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


I've applied the first 4 patches and did a dtc sync after patch 1.

Rob