[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260112142009.1006236-29-herve.codina@bootlin.com>
Date: Mon, 12 Jan 2026 15:19:18 +0100
From: Herve Codina <herve.codina@...tlin.com>
To: David Gibson <david@...son.dropbear.id.au>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk@...nel.org>,
Conor Dooley <conor+dt@...nel.org>
Cc: Ayush Singh <ayush@...gleboard.org>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
devicetree-compiler@...r.kernel.org,
devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
devicetree-spec@...r.kernel.org,
Hui Pu <hui.pu@...ealthcare.com>,
Ian Ray <ian.ray@...ealthcare.com>,
Luca Ceresoli <luca.ceresoli@...tlin.com>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>,
Herve Codina <herve.codina@...tlin.com>
Subject: [RFC PATCH 28/77] tests: metadata: Add a test for export symbols sorting
dtc is able to sort the export symbols list when the --sort option is
used.
Add a test for this feature.
Signed-off-by: Herve Codina <herve.codina@...tlin.com>
---
tests/metadata_sort.dtb.dts.expect | 18 ++++++++++++++++++
tests/metadata_sort.dtb.expect | 15 +++++++++++++++
tests/metadata_sort.dts | 21 +++++++++++++++++++++
tests/run_tests.sh | 8 ++++++++
4 files changed, 62 insertions(+)
create mode 100644 tests/metadata_sort.dtb.dts.expect
create mode 100644 tests/metadata_sort.dtb.expect
create mode 100644 tests/metadata_sort.dts
diff --git a/tests/metadata_sort.dtb.dts.expect b/tests/metadata_sort.dtb.dts.expect
new file mode 100644
index 0000000..f07a42b
--- /dev/null
+++ b/tests/metadata_sort.dtb.dts.expect
@@ -0,0 +1,18 @@
+/dts-v1/;
+/addon/;
+
+/ {
+
+ node-a {
+ prop_a = <0x1c8>;
+ prop_b = <0x7b>;
+
+ /export/ a: &{/node-b};
+ /export/ ba: &{/node-b};
+ /export/ bb: &{/node-b};
+ };
+
+ node-b {
+ phandle = <0x01>;
+ };
+};
diff --git a/tests/metadata_sort.dtb.expect b/tests/metadata_sort.dtb.expect
new file mode 100644
index 0000000..7856894
--- /dev/null
+++ b/tests/metadata_sort.dtb.expect
@@ -0,0 +1,15 @@
+/dts-v1/;
+/addon/;
+
+/ {
+ node-a {
+ prop_a = <0x000001c8>;
+ prop_b = <0x0000007b>;
+ // [FDT_EXPORT_SYM] 'a' -> phandle 0x00000001
+ // [FDT_EXPORT_SYM] 'ba' -> phandle 0x00000001
+ // [FDT_EXPORT_SYM] 'bb' -> phandle 0x00000001
+ };
+ node-b {
+ phandle = <0x00000001>;
+ };
+};
diff --git a/tests/metadata_sort.dts b/tests/metadata_sort.dts
new file mode 100644
index 0000000..7d1cca7
--- /dev/null
+++ b/tests/metadata_sort.dts
@@ -0,0 +1,21 @@
+// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)
+/*
+ * Copyright (C) 2026 Bootlin
+ */
+
+/dts-v1/;
+/addon/;
+
+/ {
+ node_b: node-b {
+ };
+
+ node-a {
+ prop_b = <123>;
+ prop_a = <456>;
+
+ /export/ ba: &node_b;
+ /export/ bb: &node_b;
+ /export/ a: &node_b;
+ };
+};
diff --git a/tests/run_tests.sh b/tests/run_tests.sh
index ed3a240..fc270e2 100755
--- a/tests/run_tests.sh
+++ b/tests/run_tests.sh
@@ -1154,6 +1154,14 @@ metadata_tests() {
# Keep only lines containing 'dt_flags'
sed -i '/dt_flags/!d' metadata_dtflags1.dtb.out
base_run_test check_diff metadata_dtflags1.dtb.out "$SRCDIR/metadata_dtflags1.dtb.expect"
+
+ run_dtc_test -I dts -O dtb -s -o metadata_sort.dtb "$SRCDIR/metadata_sort.dts"
+ base_run_test wrap_fdtdump metadata_sort.dtb metadata_sort.dtb.out
+ # Remove unneeded comments
+ sed -i '/^\/\/ /d' metadata_sort.dtb.out
+ base_run_test check_diff metadata_sort.dtb.out "$SRCDIR/metadata_sort.dtb.expect"
+ run_dtc_test -I dtb -O dts -o metadata_sort.dtb.dts metadata_sort.dtb
+ base_run_test check_diff metadata_sort.dtb.dts "$SRCDIR/metadata_sort.dtb.dts.expect"
}
pylibfdt_tests () {
--
2.52.0
Powered by blists - more mailing lists