The test devicetree is only compiled for U-Boot proper. When accessing it in
SPL we need to go up one directory.

Signed-off-by: Sean Anderson <sean...@gmail.com>
---

Changes in v2:
- Compare to PHASE_SPL in sandbox_cmdline_cb_test_fdt for clarity
- Split off from fs test

 arch/sandbox/cpu/start.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/sandbox/cpu/start.c b/arch/sandbox/cpu/start.c
index 2c8a72590b5..2589c2eba73 100644
--- a/arch/sandbox/cpu/start.c
+++ b/arch/sandbox/cpu/start.c
@@ -13,6 +13,7 @@
 #include <log.h>
 #include <os.h>
 #include <sort.h>
+#include <spl.h>
 #include <asm/getopt.h>
 #include <asm/global_data.h>
 #include <asm/io.h>
@@ -202,10 +203,14 @@ static int sandbox_cmdline_cb_test_fdt(struct 
sandbox_state *state,
 {
        char buf[256];
        char *fname;
+       char *relname;
        int len;
 
-       len = state_get_rel_filename("arch/sandbox/dts/test.dtb", buf,
-                                    sizeof(buf));
+       if (spl_phase() <= PHASE_SPL)
+               relname = "../arch/sandbox/dts/test.dtb";
+       else
+               relname = "arch/sandbox/dts/test.dtb";
+       len = state_get_rel_filename(relname, buf, sizeof(buf));
        if (len < 0)
                return len;
 
-- 
2.37.1

Reply via email to