[RFC PATCH 26/77] tests: metadata: Add export symbols with local references tests
Herve Codina <[email protected]> Mon, 12 Jan 2026 15:19:16 +0100
| Newsgroups | org.kernel.vger.devicetree-spec,org.kernel.vger.devicetree-compiler,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Add tests related to export symbols using local phandle references (FDT_EXPORT_SYM dtb tag). Signed-off-by: Herve Codina <[email protected]> --- .../metadata_exportsyms_local.dtb.dts.expect | 26 +++++++++++++++++ tests/metadata_exportsyms_local.dtb.expect | 20 +++++++++++++ tests/metadata_exportsyms_local.dts | 28 +++++++++++++++++++ .../metadata_exportsyms_local.dts.dts.expect | 26 +++++++++++++++++ tests/run_tests.sh | 2 +- 5 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 tests/metadata_exportsyms_local.dtb.dts.expect create mode 100644 tests/metadata_exportsyms_local.dtb.expect create mode 100644 tests/metadata_exportsyms_local.dts create mode 100644 tests/metadata_exportsyms_local.dts.dts.expect diff --git a/tests/metadata_exportsyms_local.dtb.dts.expect b/tests/metadata_exportsyms_local.dtb.dts.expect new file mode 100644 index 0000000..ac3d5b3 --- /dev/null +++ b/tests/metadata_exportsyms_local.dtb.dts.expect @@ -0,0 +1,26 @@ +/dts-v1/; + +/ { + + node-a { + }; + + node-b { + phandle = <0x03>; + }; + + node-c { + + sub-node { + phandle = <0x02>; + }; + }; + + node-d { + phandle = <0x01>; + + /export/ node_d: &{/node-d}; + /export/ subnode_c: &{/node-c/sub-node}; + /export/ node_b: &{/node-b}; + }; +}; diff --git a/tests/metadata_exportsyms_local.dtb.expect b/tests/metadata_exportsyms_local.dtb.expect new file mode 100644 index 0000000..2002553 --- /dev/null +++ b/tests/metadata_exportsyms_local.dtb.expect @@ -0,0 +1,20 @@ +/dts-v1/; + +/ { + node-a { + }; + node-b { + phandle = <0x00000003>; + }; + node-c { + sub-node { + phandle = <0x00000002>; + }; + }; + node-d { + phandle = <0x00000001>; + // [FDT_EXPORT_SYM] 'node_d' -> phandle 0x00000001 + // [FDT_EXPORT_SYM] 'subnode_c' -> phandle 0x00000002 + // [FDT_EXPORT_SYM] 'node_b' -> phandle 0x00000003 + }; +}; diff --git a/tests/metadata_exportsyms_local.dts b/tests/metadata_exportsyms_local.dts new file mode 100644 index 0000000..10e6e47 --- /dev/null +++ b/tests/metadata_exportsyms_local.dts @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause) +/* + * Copyright (C) 2026 Bootlin + */ + +/dts-v1/; + +/ { + node-a { + }; + + node_b: node-b { + }; + + node-c { + sub_node: sub-node { + }; + }; + + node_d: node-d { + /export/ node_d: &node_d; + /export/ subnode_c: &sub_node; + }; +}; + +&node_d { + /export/ node_b: &node_b; +}; diff --git a/tests/metadata_exportsyms_local.dts.dts.expect b/tests/metadata_exportsyms_local.dts.dts.expect new file mode 100644 index 0000000..4723e7e --- /dev/null +++ b/tests/metadata_exportsyms_local.dts.dts.expect @@ -0,0 +1,26 @@ +/dts-v1/; + +/ { + + node-a { + }; + + node_b: node-b { + phandle = <0x03>; + }; + + node-c { + + sub_node: sub-node { + phandle = <0x02>; + }; + }; + + node_d: node-d { + phandle = <0x01>; + + /export/ node_d: &node_d; + /export/ subnode_c: &sub_node; + /export/ node_b: &node_b; + }; +}; diff --git a/tests/run_tests.sh b/tests/run_tests.sh index def1a7e..ed3a240 100755 --- a/tests/run_tests.sh +++ b/tests/run_tests.sh @@ -1126,7 +1126,7 @@ wrap_fdtdump () { metadata_tests() { for dt in metadata_reflocal metadata_refphandle \ - metadata_addon_base; do + metadata_addon_base metadata_exportsyms_local; do run_dtc_test -I dts -O dts -o $dt.dts.dts "$SRCDIR/$dt.dts" base_run_test check_diff $dt.dts.dts "$SRCDIR/$dt.dts.dts.expect" run_dtc_test -I dts -O dtb -o $dt.dtb "$SRCDIR/$dt.dts" -- 2.52.0