diff options
Diffstat (limited to 'board-js2x')
-rw-r--r-- | board-js2x/llfw/stage2.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/board-js2x/llfw/stage2.c b/board-js2x/llfw/stage2.c index 245d92e..9cc9801 100644 --- a/board-js2x/llfw/stage2.c +++ b/board-js2x/llfw/stage2.c @@ -264,7 +264,9 @@ early_c_entry(uint64_t start_addr) load_file(0x100, "xvect", 0, romfs_base); load_file(SLAVELOOP_LOADBASE, "stageS", 0, romfs_base); c_romfs_lookup("ofw_main", romfs_base, &fileInfo); - load_elf_file((void *) fileInfo.addr_data, &ofw_addr); + + elf_load_file((void *) fileInfo.addr_data, &ofw_addr, + NULL, flush_cache); ofw_start = (void (*)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t)) &ofw_addr; @@ -279,6 +281,7 @@ early_c_entry(uint64_t start_addr) * non-ePAPR-compliant firmware * r7 = implementation dependent */ + asm volatile("isync; sync;" : : : "memory"); ofw_start(0, romfs_base, 0, 0, 0); // never return } |