e3b32b75b5
The dtbs_equal_ordered test program is used to implement a number of testcases. However, the test program itself has never been particularly well tested. In addition there are testcases coming in future for which it would be useful to have a corresponding "dtbs_equal_unordered" which checks for equality of device trees, not considering the internal ordering of elements. Finally, for some tests we may want it would be useful to check trees for equality with the PASS case being when they are *not* equal. This patch addresses all of the above. A dtbs_equal_unordered is added, and both it and the existing dtbs_equal_ordered program now take a -n option to make the PASS case be where the trees are not equal. A number of example trees with slight modifications from test_tree1 are used to verify that both these programs correctly identify when the tree is altered, and a dtb_reverse program is used to verify that the unordered version does not depend on internal ordering. These new testcases for the equality testing programs are split out into a new test group in run_tests.sh. dtbs_equal_unordered uses the new property iteration functions, and so this also acts as further testing for those functions. dtbs_equal_unordered will be useful for further testing the recently added tree-merging code and its upcoming extensions. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
36 lines
514 B
Text
36 lines
514 B
Text
/dts-v1/;
|
|
|
|
/memreserve/ 123456789 010000;
|
|
|
|
/ {
|
|
compatible = "test_tree1";
|
|
prop-int = <0xdeadbeef>;
|
|
prop-str = "hello world";
|
|
|
|
subnode@1 {
|
|
compatible = "subnode1";
|
|
prop-int = [deadbeef];
|
|
|
|
subsubnode {
|
|
compatible = "subsubnode1", "subsubnode";
|
|
prop-int = <0xdeadbeef>;
|
|
};
|
|
|
|
ss1 {
|
|
};
|
|
};
|
|
|
|
subnode@2 {
|
|
linux,phandle = <0x2000>;
|
|
prop-int = <123456789>;
|
|
|
|
subsubnode@0 {
|
|
phandle = <0x2001>;
|
|
compatible = "subsubnode2", "subsubnode";
|
|
prop-int = <0726746425>;
|
|
};
|
|
|
|
ss2 {
|
|
};
|
|
};
|
|
};
|