dtc: Test and fix conversion to/from old dtb versions
This patch adds testcases which test dtc when used to convert between
different dtb versions. These tests uncovered a couple of bugs
handling old dtb versions, which are also fixed.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
diff --git a/tests/run_tests.sh b/tests/run_tests.sh
index 443177f..492453d 100755
--- a/tests/run_tests.sh
+++ b/tests/run_tests.sh
@@ -172,6 +172,19 @@
run_test dtbs_equal_ordered $tree odts_$tree.test.dtb
done
+ # Check version conversions
+ for tree in test_tree1.dtb ; do
+ for aver in 1 2 3 16 17; do
+ atree="ov${aver}_$tree.test.dtb"
+ run_test dtc.sh -I dtb -O dtb -V$aver -o $atree $tree
+ for bver in 16 17; do
+ btree="ov${bver}_$atree"
+ run_test dtc.sh -I dtb -O dtb -V$bver -o $btree $atree
+ run_test dtbs_equal_ordered $btree $tree
+ done
+ done
+ done
+
# Check some checks
run_test dtc-checkfails.sh duplicate_node_names -- -I dts -O dtb dup-nodename.dts
run_test dtc-checkfails.sh duplicate_property_names -- -I dts -O dtb dup-propname.dts