summaryrefslogtreecommitdiff
path: root/test/dm
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2019-09-25 08:55:51 -0600
committerBin Meng <bmeng.cn@gmail.com>2019-10-08 13:57:38 +0800
commitfe9a967925521c78fb52621ee760ead381a80cb7 (patch)
treea95fb3955be4b2e287c31f9b824f80e1c20ac860 /test/dm
parentfdd72be486144f154fdfac91e7bfc2d503fea9fb (diff)
dm: test: Fix running of multiple test from command line
At present when multiple 'ut dm' commands are executed, all but the first is run with a flat tree, even if live tree is enabled. This is because the live tree node pointer is set to NULL and never restored. This does not affect normal test running, which just runs all the test in one go, but can be confusing when several individual tests are run during the same U-Boot run. Correct this by restoring the pointer. Fixes: c166c47ba3 (dm: test: Add support for running tests with livetree) Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'test/dm')
-rw-r--r--test/dm/test-main.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/test/dm/test-main.c b/test/dm/test-main.c
index 5d79ce641d..487d8b9627 100644
--- a/test/dm/test-main.c
+++ b/test/dm/test-main.c
@@ -188,8 +188,12 @@ static int dm_test_main(const char *test_name)
else
printf("Failures: %d\n", uts->fail_count);
+ /* Put everything back to normal so that sandbox works as expected */
+#ifdef CONFIG_OF_LIVE
+ gd->of_root = uts->of_root;
+#endif
gd->dm_root = NULL;
- ut_assertok(dm_init(false));
+ ut_assertok(dm_init(IS_ENABLED(CONFIG_OF_LIVE)));
dm_scan_platdata(false);
dm_scan_fdt(gd->fdt_blob, false);