From 68f3d957851ada49c1dccd62ca0e007051a97220 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20Neusch=C3=A4fer?= Date: Thu, 7 Jul 2016 20:53:29 +0200 Subject: [PATCH] UPSTREAM: arch/riscv: Unconditionally start payloads in machine mode Ron Minnich writes: "we'll change cbfstool to put a header on the payload to jump to supervisor if that is desired. The principal here is that payloads are always started in machine mode, but we want to set the page tables up for them." BUG=None BRANCH=None TEST=None Change-Id: I5cbfc90afd3febab33835935f08005136a3f47e9 Original-Signed-off-by: Jonathan Neuschfer Original-Reviewed-on: https://review.coreboot.org/15510 Original-Tested-by: build bot (Jenkins) Original-Reviewed-by: Ronald G. Minnich Signed-off-by: Aaron Durbin Reviewed-on: https://chromium-review.googlesource.com/360813 Reviewed-by: Duncan Laurie --- src/arch/riscv/boot.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/arch/riscv/boot.c b/src/arch/riscv/boot.c index 96526bf64b..743549081d 100644 --- a/src/arch/riscv/boot.c +++ b/src/arch/riscv/boot.c @@ -24,11 +24,9 @@ void arch_prog_run(struct prog *prog) if (ENV_RAMSTAGE && prog_type(prog) == PROG_PAYLOAD) { initVirtualMemory(); - write_csr(mepc, doit); - asm volatile("eret"); - } else { - doit(prog_entry_arg(prog)); } + + doit(prog_entry_arg(prog)); } int arch_supports_bounce_buffer(void)