Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays
@ 2025-02-21 22:55 Romain Naour via buildroot
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 2/5] configs/rock5b: build and install rock5b " Romain Naour via buildroot
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Romain Naour via buildroot @ 2025-02-21 22:55 UTC (permalink / raw)
  To: buildroot; +Cc: Michael Walle, Niklas Cassel, Romain Naour

From: Michael Walle <michael@walle.cc>

The linux kernel can build device tree overlays (.dtbo) itself. Add
support to build and copy them along with the actual device trees.
These can either be in-tree device tree overlays
(BR2_LINUX_KERNEL_INTREE_DTSO_NAMES) or they can be provided outside of
the kernel (BR2_LINUX_KERNEL_CUSTOM_DTS_PATH). In the latter case, the
overlay source files will be copied into the kernel tree first.

Signed-off-by: Michael Walle <michael@walle.cc>
Reviewed-by: Niklas Cassel <niklas.cassel@wdc.com>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
---
v2: https://lore.kernel.org/buildroot/20240902112735.728574-1-michael@walle.cc/
---
 linux/Config.in | 14 +++++++++++---
 linux/linux.mk  |  7 +++++--
 2 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/linux/Config.in b/linux/Config.in
index 238ef4aada..ee4809b91b 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -426,12 +426,20 @@ config BR2_LINUX_KERNEL_INTREE_DTS_NAME
 	  the trailing .dts. You can provide a list of
 	  dts files to build, separated by spaces.
 
+config BR2_LINUX_KERNEL_INTREE_DTSO_NAMES
+	string "In-tree Device Tree Overlay file names"
+	help
+	  Names of in-tree device tree overlay, without the trailing
+	  .dtso which should be built and installed into the target
+	  system, separated by spaces.
+
 config BR2_LINUX_KERNEL_CUSTOM_DTS_PATH
 	string "Out-of-tree Device Tree Source file paths"
 	help
-	  Paths to out-of-tree Device Tree Source (.dts) and Device Tree
-	  Source Include (.dtsi) files, separated by spaces. These files
-	  will be copied to the kernel sources and the .dts files will
+	  Paths to out-of-tree Device Tree Source (.dts), Device Tree
+	  Source Include (.dtsi) and Device Tree Overlay Source (.dtso)
+	  files, separated by spaces. These files will be copied to the
+	  kernel sources and the .dts files will
 	  be compiled from there.
 
 config BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME
diff --git a/linux/linux.mk b/linux/linux.mk
index 12699b8ee4..9c621c18d5 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -203,14 +203,17 @@ endif
 LINUX_VERSION_PROBED = `MAKEFLAGS='$(filter-out w,$(MAKEFLAGS))' $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) --no-print-directory -s kernelrelease 2>/dev/null`
 
 LINUX_DTS_NAME += $(call qstrip,$(BR2_LINUX_KERNEL_INTREE_DTS_NAME))
+LINUX_DTSO_NAMES += $(call qstrip,$(BR2_LINUX_KERNEL_INTREE_DTSO_NAMES))
 
 # We keep only the .dts files, so that the user can specify both .dts
 # and .dtsi files in BR2_LINUX_KERNEL_CUSTOM_DTS_PATH. Both will be
 # copied to arch/<arch>/boot/dts, but only the .dts files will
 # actually be generated as .dtb.
-LINUX_DTS_NAME += $(basename $(filter %.dts,$(notdir $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)))))
+LINUX_CUSTOM_DTS_PATH = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH))
+LINUX_DTS_NAME += $(basename $(filter %.dts,$(notdir $(LINUX_CUSTOM_DTS_PATH))))
+LINUX_DTSO_NAMES += $(basename $(filter %.dtso,$(notdir $(LINUX_CUSTOM_DTS_PATH))))
 
-LINUX_DTBS = $(addsuffix .dtb,$(LINUX_DTS_NAME))
+LINUX_DTBS = $(addsuffix .dtb,$(LINUX_DTS_NAME)) $(addsuffix .dtbo,$(LINUX_DTSO_NAMES))
 
 ifeq ($(BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM),y)
 LINUX_IMAGE_NAME = $(call qstrip,$(BR2_LINUX_KERNEL_IMAGE_NAME))
-- 
2.48.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH v6 2/5] configs/rock5b: build and install rock5b device tree overlays
  2025-02-21 22:55 [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Romain Naour via buildroot
@ 2025-02-21 22:55 ` Romain Naour via buildroot
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 3/5] linux: introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR Romain Naour via buildroot
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 8+ messages in thread
From: Romain Naour via buildroot @ 2025-02-21 22:55 UTC (permalink / raw)
  To: buildroot; +Cc: Niklas Cassel, Romain Naour, Niklas Cassel

From: Niklas Cassel <cassel@kernel.org>

Build and install all in-tree rock5b device tree overlays.

The device tree overlays will be available in /boot, such that it is
possible for u-boot to apply one (or many) of them before booting Linux.

Signed-off-by: Niklas Cassel <cassel@kernel.org>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
Reviewed-by: Niklas Cassel <niklas.cassel@wdc.com>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
---
 configs/rock5b_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/configs/rock5b_defconfig b/configs/rock5b_defconfig
index 8a4b579e58..7d718df15d 100644
--- a/configs/rock5b_defconfig
+++ b/configs/rock5b_defconfig
@@ -17,6 +17,7 @@ BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
 BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/radxa/rock5b/linux.fragment"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="rockchip/rk3588-rock-5b"
+BR2_LINUX_KERNEL_INTREE_DTSO_NAMES="rockchip/rk3588-rock-5b-pcie-srns rockchip/rk3588-rock-5b-pcie-ep"
 BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT=y
 BR2_LINUX_KERNEL_INSTALL_TARGET=y
 BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
-- 
2.48.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH v6 3/5] linux: introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
  2025-02-21 22:55 [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Romain Naour via buildroot
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 2/5] configs/rock5b: build and install rock5b " Romain Naour via buildroot
@ 2025-02-21 22:55 ` Romain Naour via buildroot
  2025-02-24  8:50   ` Niklas Cassel via buildroot
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 4/5] configs/acmesystems_acqua_a5_*: switch to BR2_LINUX_KERNEL_CUSTOM_DTS_DIR Romain Naour via buildroot
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 8+ messages in thread
From: Romain Naour via buildroot @ 2025-02-21 22:55 UTC (permalink / raw)
  To: buildroot
  Cc: Romain Naour, Michael Walle, Gaël PORTAY, Chris Packham,
	Edgar Bonet

Since Linux 6.12, the Buildroot option BR2_LINUX_KERNEL_CUSTOM_DTS_PATH
does not work as expected on arm, arm64, mips and riscv[1]. These are
the architectures that store the in-tree DTS files in vendor-specific
subdirectories of arch/$ARCH/boot/dts/.

BR2_LINUX_KERNEL_CUSTOM_DTS_PATH was introduced in Buildroot 2012.08
(commit 69fc497df0ae "Rework support for the device tree"). At the time,
the kernel kept all in-tree DTS files directly in arch/$ARCH/boot/dts/,
and this is where Buildroot drops the user's custom DTS. Vendor-specific
subdirectories appeared in Linux v3.19 for the arm64 architecture, and
this scheme was later adopted by mips, riscv and arm.

For these architectures, Linux 6.12 (commit e7e2941300d2, "kbuild: split
device tree build rules into scripts/Makefile.dtbs") made the DTB build
infrastructure incompatible with the way
BR2_LINUX_KERNEL_CUSTOM_DTS_PATH is implemented. This infrastructure now
expects all DTS files to be in vendor-specific subdirectories on the
architectures that use this scheme.

We can't update easily the current behavior of
BR2_LINUX_KERNEL_CUSTOM_DTS_PATH since it expect a list of files but
can also be used "unexpectedly" with directories [2].

  BR2_LINUX_KERNEL_INTREE_DTS_NAME="st/stm32mp135f-dk-mx"
  BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="$(BR2_EXTERNAL_ST_PATH)/[...]/linux-dts/st"

In this case, the st directory is copied into the arch/$ARCH/boot/dts/
and BR2_LINUX_KERNEL_INTREE_DTS_NAME is used to build stm32mp135f-dk-mx dtb
as if it was intree.

Introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR configuration
parameter to specify a list of directories that are copied as-is over
the arch/<arch>/boot/dts/ directory before building the device tree
blob:

  board/acmesystems/acqua-a5/dts/
  └── microchip
      └── at91-sama5d3_acqua.dts

defconfig:
  BR2_LINUX_KERNEL_CUSTOM_DTS_DIR="board/acmesystems/acqua-a5/dts"

Each dts file found is automatically added to the list of devicetree
to build.

BR2_LINUX_KERNEL_CUSTOM_DTS_DIR can also be used for external
devicetree overlays files:

  board/ti/am574x-idk/dts/
  └── ti
      └── omap
          └── am57xx-evm.dtso

With this new option, BR2_LINUX_KERNEL_CUSTOM_DTS_PATH is now deprecated.

Note: We want to create a list of dts files (LINUX_DTS_LIST) present in
diectrories listed by BR2_LINUX_KERNEL_CUSTOM_DTS_DIR. But
LINUX_DTS_LIST must not contain BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
paths. Use GNU 'find' print format %P to print each dts file path
without their respective dts overlay directory path.
Do the same for LINUX_DTSO_LIST.

Thanks to Edgar Bonet for the initial contribution [3].

[1] https://lists.buildroot.org/pipermail/buildroot/2024-October/765463.html
[2] https://github.com/bootlin/buildroot-external-st/blob/541ba7d96330cd7da5674b46806b549a7ccf9da8/configs/st_stm32mp135f_dk_demo_defconfig#L21
[3] https://lore.kernel.org/buildroot/93f83afb-6987-441c-8e06-dab4d43b828f@grenoble.cnrs.fr/

Cc: Michael Walle <michael@walle.cc>
Cc: Gaël PORTAY <gael.portay+rtone@gmail.com>
Reported-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
[Romain:
  - Rework the initial contribution by Edgar Bonet by
    BR2_LINUX_KERNEL_CUSTOM_DTS_DIR following
    Michael Walle comments and Gaël PORTAY review.
  - Reword the commit log accordingly.
]
Signed-off-by: Romain Naour <romain.naour@smile.fr>
---
Changes v5 -> v6:
  - Improve BR2_LINUX_KERNEL_CUSTOM_DTS_DIR help text suggested by Niklas Cassel.

Changes v4 -> v5:
  - Rename LINUX_INSTALL_CUSTOM_DTS_OVERLAY to LINUX_COPY_CUSTOM_DTS_FILES
  - Rename LINUX_KERNEL_CUSTOM_DTS_PATH_OVERLAY to LINUX_KERNEL_CUSTOM_DTS_DIR
  - Add devicetree overlay support
  - Update authorship of the commit:
    https://lore.kernel.org/buildroot/98d47c49-0e68-4d07-b2c9-1d67a6fd0e13@grenoble.cnrs.fr/

Changes v3 -> v4:
  - Replace hooks added in v2 and add a new option to provide DTS overlay
    https://lore.kernel.org/buildroot/D6UG5Z1HUN9N.GWVHB4L823ZC@kernel.org/

Changes v2 -> v3:
  - note, in the comment and in the log message, that this issue only
    affects some architectures
  - expand the log message with some historical context
These changes were suggested by Romain Naour.

Changes v1 -> v2:
  - define a hook for LINUX_POST_PATCH_HOOKS and LINUX_POST_RSYNC_HOOKS
    instead of modifying LINUX_BUILD_CMDS
  - use $(patsubst %.dts,%.dtb,$(dts)) instead of $(dts:%.dts=%.dtb)
both changes suggested by Arnout Vandecappelle.

This was build-tested with an Acqua defconfig,
in the same manner as v2:

    # Test with an old kernel: v6.6.30
    make acmesystems_acqua_a5_512mb_defconfig
    make linux

    # Test with a new kernel: v6.12.8
    make linux-dirclean
    git am bump_Acqua_kernel_to_v6.12.8.patch
    make acmesystems_acqua_a5_512mb_defconfig
    make linux

    # Test the OVERRIDE_SRCDIR case.
    make linux-dirclean
    git -C $HOME/src/linux checkout v6.12.8
    echo "LINUX_OVERRIDE_SRCDIR = $HOME/src/linux" > local.mk
    make acmesystems_acqua_a5_512mb_defconfig
    make linux
---
 linux/Config.in | 29 +++++++++++++++++++++++++++++
 linux/linux.mk  | 17 +++++++++++++++++
 2 files changed, 46 insertions(+)

diff --git a/linux/Config.in b/linux/Config.in
index ee4809b91b..46df4d6aed 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -435,6 +435,7 @@ config BR2_LINUX_KERNEL_INTREE_DTSO_NAMES
 
 config BR2_LINUX_KERNEL_CUSTOM_DTS_PATH
 	string "Out-of-tree Device Tree Source file paths"
+	depends on BR2_LINUX_KERNEL_CUSTOM_DTS_DIR = ""
 	help
 	  Paths to out-of-tree Device Tree Source (.dts), Device Tree
 	  Source Include (.dtsi) and Device Tree Overlay Source (.dtso)
@@ -442,6 +443,34 @@ config BR2_LINUX_KERNEL_CUSTOM_DTS_PATH
 	  kernel sources and the .dts files will
 	  be compiled from there.
 
+	  Due to a kernel build system changes in 6.12,
+	  BR2_LINUX_KERNEL_CUSTOM_DTS_PATH is now deprecated and
+	  replaced by BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
+
+config BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
+	string "Out-of-tree Device Tree Source overlay directories"
+	help
+	  Specify a list of directories that are copied as-is over the
+	  arch/<arch>/boot/dts/ directory before building the device
+	  tree blob.
+
+	  This overlay can contain dts, dtso and dtsi files.
+
+	  BR2_LINUX_KERNEL_CUSTOM_DTS_DIR should point to one or more
+	  directories containing a vendor subdirectory (e.g. rockchip)
+	  which contains the dts files. This vendor subdirectory should
+	  match the vendor subdirectory used by the board in the kernel
+	  (e.g. arch/arm64/boot/dts/rockchip/).
+
+	  While most architechtures make use of vendor subdirectories,
+	  like arm, arm64 and riscv, some architectures like powerpc
+	  and xtensa do not.
+	  In this case, BR2_LINUX_KERNEL_CUSTOM_DTS_DIR should point to
+	  a directory containing the dts files directly.
+
+	  Since the 6.12 release, each out-of-tree Device Tree Source
+	  file must be copied into their corresponding sub-directory.
+
 config BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME
 	bool "Keep the directory name of the Device Tree"
 	help
diff --git a/linux/linux.mk b/linux/linux.mk
index 9c621c18d5..f915823dcf 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -213,6 +213,22 @@ LINUX_CUSTOM_DTS_PATH = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH))
 LINUX_DTS_NAME += $(basename $(filter %.dts,$(notdir $(LINUX_CUSTOM_DTS_PATH))))
 LINUX_DTSO_NAMES += $(basename $(filter %.dtso,$(notdir $(LINUX_CUSTOM_DTS_PATH))))
 
+LINUX_KERNEL_CUSTOM_DTS_DIR = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_DIR))
+ifneq ($(LINUX_KERNEL_CUSTOM_DTS_DIR),)
+# Use evaluation-during-assignment using := to avoid any re-evaluation
+# of LINUX_DTS_LIST when LINUX_DTS_NAME is used.
+LINUX_DTS_LIST := $(shell find $(LINUX_KERNEL_CUSTOM_DTS_DIR) -name '*.dts' -printf '%P\n' 2>/dev/null)
+LINUX_DTSO_LIST := $(shell find $(LINUX_KERNEL_CUSTOM_DTS_DIR) -name '*.dtso' -printf '%P\n' 2>/dev/null)
+LINUX_DTS_NAME += $(basename $(LINUX_DTS_LIST))
+LINUX_DTSO_NAMES += $(basename $(LINUX_DTSO_LIST))
+
+define LINUX_COPY_CUSTOM_DTS_FILES
+	$(foreach d, $(LINUX_KERNEL_CUSTOM_DTS_DIR), \
+		@$(call MESSAGE,"Copying devicetree overlay $(d)")$(sep) \
+		$(Q)$(call SYSTEM_RSYNC,$(d),$(LINUX_ARCH_PATH)/boot/dts/)$(sep))
+endef
+endif
+
 LINUX_DTBS = $(addsuffix .dtb,$(LINUX_DTS_NAME)) $(addsuffix .dtbo,$(LINUX_DTSO_NAMES))
 
 ifeq ($(BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM),y)
@@ -527,6 +543,7 @@ define LINUX_BUILD_CMDS
 	$(foreach dts,$(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)), \
 		cp -f $(dts) $(LINUX_ARCH_PATH)/boot/dts/
 	)
+	$(LINUX_COPY_CUSTOM_DTS_FILES)
 	$(LINUX_MAKE_ENV) $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) all
 	$(LINUX_MAKE_ENV) $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME)
 	$(LINUX_BUILD_DTB)
-- 
2.48.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH v6 4/5] configs/acmesystems_acqua_a5_*: switch to BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
  2025-02-21 22:55 [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Romain Naour via buildroot
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 2/5] configs/rock5b: build and install rock5b " Romain Naour via buildroot
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 3/5] linux: introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR Romain Naour via buildroot
@ 2025-02-21 22:55 ` Romain Naour via buildroot
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 5/5] configs/acmesystems_acqua_a5_*: bump to Linux 6.12.9 Romain Naour via buildroot
  2025-03-05 20:02 ` [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Julien Olivain
  4 siblings, 0 replies; 8+ messages in thread
From: Romain Naour via buildroot @ 2025-02-21 22:55 UTC (permalink / raw)
  To: buildroot; +Cc: Romain Naour, Edgar Bonet, Niklas Cassel

Before updating the kernel to 6.12 version, use the newly introduced
BR2_LINUX_KERNEL_CUSTOM_DTS_DIR option to provide the Out-of-tree
Device Tree Source file with its vendor subdirectory that is needed
since kernel 6.12 [1].

Revert the sama5d31.dtsi include path update added by the previous
kernel version bump 6.6.12 [2].

As noticed by Michael Walle, newer OOT device trees should use the
same #include directives as the in-tree device trees to ease
sharing the files between u-boot, linux and OOT external trees [3].

[1] https://lists.buildroot.org/pipermail/buildroot/2024-October/765463.html
[2] 8fb5209885 ("configs/acmesystems_acqua_a5_*: bump to Linux 6.6.12")
[3] https://lore.kernel.org/buildroot/D6UG5Z1HUN9N.GWVHB4L823ZC@kernel.org/

Cc: Edgar Bonet <bonet@grenoble.cnrs.fr>
Acked-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Tested-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
Reviewed-by: Niklas Cassel <niklas.cassel@wdc.com>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
---
v6: switch to BR2_LINUX_KERNEL_CUSTOM_DTS_DIR in a separate patch (Niklas Cassel)
---
 .../acqua-a5/{ => dts/microchip}/at91-sama5d3_acqua.dts         | 2 +-
 configs/acmesystems_acqua_a5_256mb_defconfig                    | 2 +-
 configs/acmesystems_acqua_a5_512mb_defconfig                    | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
 rename board/acmesystems/acqua-a5/{ => dts/microchip}/at91-sama5d3_acqua.dts (99%)

diff --git a/board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts b/board/acmesystems/acqua-a5/dts/microchip/at91-sama5d3_acqua.dts
similarity index 99%
rename from board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts
rename to board/acmesystems/acqua-a5/dts/microchip/at91-sama5d3_acqua.dts
index 411d1942f5..60be8a67cd 100644
--- a/board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts
+++ b/board/acmesystems/acqua-a5/dts/microchip/at91-sama5d3_acqua.dts
@@ -9,7 +9,7 @@
  * Licensed under GPLv2 or later.
  */
 /dts-v1/;
-#include "microchip/sama5d31.dtsi"
+#include "sama5d31.dtsi"
 
 / {
 	model = "Acme Systems Acqua SOM";
diff --git a/configs/acmesystems_acqua_a5_256mb_defconfig b/configs/acmesystems_acqua_a5_256mb_defconfig
index b102dde0ba..d21ff97216 100644
--- a/configs/acmesystems_acqua_a5_256mb_defconfig
+++ b/configs/acmesystems_acqua_a5_256mb_defconfig
@@ -13,7 +13,7 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.30"
 BR2_LINUX_KERNEL_DEFCONFIG="sama5"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts"
+BR2_LINUX_KERNEL_CUSTOM_DTS_DIR="board/acmesystems/acqua-a5/dts"
 BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
 BR2_TARGET_ROOTFS_EXT2=y
 BR2_TARGET_ROOTFS_EXT2_4=y
diff --git a/configs/acmesystems_acqua_a5_512mb_defconfig b/configs/acmesystems_acqua_a5_512mb_defconfig
index da54eaf620..d83a058537 100644
--- a/configs/acmesystems_acqua_a5_512mb_defconfig
+++ b/configs/acmesystems_acqua_a5_512mb_defconfig
@@ -13,7 +13,7 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.30"
 BR2_LINUX_KERNEL_DEFCONFIG="sama5"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts"
+BR2_LINUX_KERNEL_CUSTOM_DTS_DIR="board/acmesystems/acqua-a5/dts"
 BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
 BR2_TARGET_ROOTFS_EXT2=y
 BR2_TARGET_ROOTFS_EXT2_4=y
-- 
2.48.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH v6 5/5] configs/acmesystems_acqua_a5_*: bump to Linux 6.12.9
  2025-02-21 22:55 [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Romain Naour via buildroot
                   ` (2 preceding siblings ...)
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 4/5] configs/acmesystems_acqua_a5_*: switch to BR2_LINUX_KERNEL_CUSTOM_DTS_DIR Romain Naour via buildroot
@ 2025-02-21 22:55 ` Romain Naour via buildroot
  2025-03-05 20:02 ` [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Julien Olivain
  4 siblings, 0 replies; 8+ messages in thread
From: Romain Naour via buildroot @ 2025-02-21 22:55 UTC (permalink / raw)
  To: buildroot; +Cc: Romain Naour, Edgar Bonet, Niklas Cassel

Cc: Edgar Bonet <bonet@grenoble.cnrs.fr>
Acked-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Tested-by: Edgar Bonet <bonet@grenoble.cnrs.fr>
Reviewed-by: Niklas Cassel <niklas.cassel@wdc.com>
Signed-off-by: Romain Naour <romain.naour@smile.fr>
---
v6: bump to Linux 6.12.9 in a separate patch (Niklas Cassel)

Runtime testing:
v4: https://lore.kernel.org/buildroot/e68817f0-312c-4980-837c-7264656457ca@grenoble.cnrs.fr/
---
 board/acmesystems/acqua-a5/patches/linux/linux.hash | 2 +-
 configs/acmesystems_acqua_a5_256mb_defconfig        | 4 ++--
 configs/acmesystems_acqua_a5_512mb_defconfig        | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/board/acmesystems/acqua-a5/patches/linux/linux.hash b/board/acmesystems/acqua-a5/patches/linux/linux.hash
index 4b20a009a7..7a4c4e57c9 100644
--- a/board/acmesystems/acqua-a5/patches/linux/linux.hash
+++ b/board/acmesystems/acqua-a5/patches/linux/linux.hash
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256  b66a5b863b0f8669448b74ca83bd641a856f164b29956e539bbcb5fdeeab9cc6  linux-6.6.30.tar.xz
+sha256  87be0360df0931b340d2bac35161a548070fbc3a8c352c49e21e96666c26aeb4  linux-6.12.9.tar.xz
diff --git a/configs/acmesystems_acqua_a5_256mb_defconfig b/configs/acmesystems_acqua_a5_256mb_defconfig
index d21ff97216..a50e306b1b 100644
--- a/configs/acmesystems_acqua_a5_256mb_defconfig
+++ b/configs/acmesystems_acqua_a5_256mb_defconfig
@@ -2,7 +2,7 @@ BR2_arm=y
 BR2_cortex_a5=y
 BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_6=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_12=y
 BR2_GLOBAL_PATCH_DIR="board/acmesystems/acqua-a5/patches"
 BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
 BR2_SYSTEM_DHCP="eth0"
@@ -10,7 +10,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
 BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/acmesystems/acqua-a5/genimage.cfg"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.30"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.9"
 BR2_LINUX_KERNEL_DEFCONFIG="sama5"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_CUSTOM_DTS_DIR="board/acmesystems/acqua-a5/dts"
diff --git a/configs/acmesystems_acqua_a5_512mb_defconfig b/configs/acmesystems_acqua_a5_512mb_defconfig
index d83a058537..6ae8d037e7 100644
--- a/configs/acmesystems_acqua_a5_512mb_defconfig
+++ b/configs/acmesystems_acqua_a5_512mb_defconfig
@@ -2,7 +2,7 @@ BR2_arm=y
 BR2_cortex_a5=y
 BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_6=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_12=y
 BR2_GLOBAL_PATCH_DIR="board/acmesystems/acqua-a5/patches"
 BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
 BR2_SYSTEM_DHCP="eth0"
@@ -10,7 +10,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
 BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/acmesystems/acqua-a5/genimage.cfg"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.30"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.9"
 BR2_LINUX_KERNEL_DEFCONFIG="sama5"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_CUSTOM_DTS_DIR="board/acmesystems/acqua-a5/dts"
-- 
2.48.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v6 3/5] linux: introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 3/5] linux: introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR Romain Naour via buildroot
@ 2025-02-24  8:50   ` Niklas Cassel via buildroot
  2025-03-04  8:39     ` Niklas Cassel via buildroot
  0 siblings, 1 reply; 8+ messages in thread
From: Niklas Cassel via buildroot @ 2025-02-24  8:50 UTC (permalink / raw)
  To: Romain Naour
  Cc: buildroot@buildroot.org, Michael Walle, Gaël PORTAY,
	Chris Packham, Edgar Bonet

On Fri, Feb 21, 2025 at 11:55:27PM +0100, Romain Naour via buildroot wrote:
> 
> Note: We want to create a list of dts files (LINUX_DTS_LIST) present in
> diectrories listed by BR2_LINUX_KERNEL_CUSTOM_DTS_DIR. But
> LINUX_DTS_LIST must not contain BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
> paths. Use GNU 'find' print format %P to print each dts file path
> without their respective dts overlay directory path.
> Do the same for LINUX_DTSO_LIST.

Personally, I would drop this Note: from the commit message.

I think that your commit message is doing a really good job of explaining
the problem (and the solution), but I don't think it needs implementation
details like this in the commit message.

If you think this is important enough to keep, then it should probably be
included as a comment next to the definition of LINUX_DTS_LIST instead of
being in the commit message.

Regardless (if you chose to kill it, or to have it as a comment), I don't
think you need to send a new version just for this, it could be fixed up
while applying.

Reviewed-by: Niklas Cassel <niklas.cassel@wdc.com>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v6 3/5] linux: introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
  2025-02-24  8:50   ` Niklas Cassel via buildroot
@ 2025-03-04  8:39     ` Niklas Cassel via buildroot
  0 siblings, 0 replies; 8+ messages in thread
From: Niklas Cassel via buildroot @ 2025-03-04  8:39 UTC (permalink / raw)
  To: Romain Naour
  Cc: buildroot@buildroot.org, Michael Walle, Gaël PORTAY,
	Chris Packham, Edgar Bonet

On Mon, Feb 24, 2025 at 09:50:19AM +0100, Niklas Cassel wrote:
> On Fri, Feb 21, 2025 at 11:55:27PM +0100, Romain Naour via buildroot wrote:
> > 
> > Note: We want to create a list of dts files (LINUX_DTS_LIST) present in
> > diectrories listed by BR2_LINUX_KERNEL_CUSTOM_DTS_DIR. But
> > LINUX_DTS_LIST must not contain BR2_LINUX_KERNEL_CUSTOM_DTS_DIR
> > paths. Use GNU 'find' print format %P to print each dts file path
> > without their respective dts overlay directory path.
> > Do the same for LINUX_DTSO_LIST.
> 
> Personally, I would drop this Note: from the commit message.
> 
> I think that your commit message is doing a really good job of explaining
> the problem (and the solution), but I don't think it needs implementation
> details like this in the commit message.
> 
> If you think this is important enough to keep, then it should probably be
> included as a comment next to the definition of LINUX_DTS_LIST instead of
> being in the commit message.
> 
> Regardless (if you chose to kill it, or to have it as a comment), I don't
> think you need to send a new version just for this, it could be fixed up
> while applying.
> 
> Reviewed-by: Niklas Cassel <niklas.cassel@wdc.com>

This series seems to have stalled.

Did you decide to wait for 2025.02 to get released before applying?


Kind regards,
Niklas
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays
  2025-02-21 22:55 [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Romain Naour via buildroot
                   ` (3 preceding siblings ...)
  2025-02-21 22:55 ` [Buildroot] [PATCH v6 5/5] configs/acmesystems_acqua_a5_*: bump to Linux 6.12.9 Romain Naour via buildroot
@ 2025-03-05 20:02 ` Julien Olivain
  4 siblings, 0 replies; 8+ messages in thread
From: Julien Olivain @ 2025-03-05 20:02 UTC (permalink / raw)
  To: Romain Naour; +Cc: buildroot, Michael Walle, Niklas Cassel

On 21/02/2025 23:55, Romain Naour via buildroot wrote:
> From: Michael Walle <michael@walle.cc>
> 
> The linux kernel can build device tree overlays (.dtbo) itself. Add
> support to build and copy them along with the actual device trees.
> These can either be in-tree device tree overlays
> (BR2_LINUX_KERNEL_INTREE_DTSO_NAMES) or they can be provided outside of
> the kernel (BR2_LINUX_KERNEL_CUSTOM_DTS_PATH). In the latter case, the
> overlay source files will be copied into the kernel tree first.
> 
> Signed-off-by: Michael Walle <michael@walle.cc>
> Reviewed-by: Niklas Cassel <niklas.cassel@wdc.com>
> Signed-off-by: Romain Naour <romain.naour@smile.fr>

Series applied to master, thanks.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2025-03-05 20:02 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-21 22:55 [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Romain Naour via buildroot
2025-02-21 22:55 ` [Buildroot] [PATCH v6 2/5] configs/rock5b: build and install rock5b " Romain Naour via buildroot
2025-02-21 22:55 ` [Buildroot] [PATCH v6 3/5] linux: introduce BR2_LINUX_KERNEL_CUSTOM_DTS_DIR Romain Naour via buildroot
2025-02-24  8:50   ` Niklas Cassel via buildroot
2025-03-04  8:39     ` Niklas Cassel via buildroot
2025-02-21 22:55 ` [Buildroot] [PATCH v6 4/5] configs/acmesystems_acqua_a5_*: switch to BR2_LINUX_KERNEL_CUSTOM_DTS_DIR Romain Naour via buildroot
2025-02-21 22:55 ` [Buildroot] [PATCH v6 5/5] configs/acmesystems_acqua_a5_*: bump to Linux 6.12.9 Romain Naour via buildroot
2025-03-05 20:02 ` [Buildroot] [PATCH v6 1/5] linux: add support for device tree overlays Julien Olivain

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox