diff options
Diffstat (limited to 'gitlab/issues_text/target_riscv/host_missing/accel_missing/2074')
| -rw-r--r-- | gitlab/issues_text/target_riscv/host_missing/accel_missing/2074 | 20 |
1 files changed, 0 insertions, 20 deletions
diff --git a/gitlab/issues_text/target_riscv/host_missing/accel_missing/2074 b/gitlab/issues_text/target_riscv/host_missing/accel_missing/2074 deleted file mode 100644 index 7470beb49..000000000 --- a/gitlab/issues_text/target_riscv/host_missing/accel_missing/2074 +++ /dev/null @@ -1,20 +0,0 @@ -riscv64 cannot use the mret instruction to jump to the address corresponding to s mode -Description of problem: -I use coreboot to boot my linux kernel.The kernel is copied at 0x82200000,I set reg mepc 0x82200000,and set reg mstatus a00000800. -and I use "mret" instruction so that qemu can jump to 0x82200000 and enter S mode.But some errors happened. -It shows: -[DEBUG] Exception: Instruction access fault -[DEBUG] Hart ID: 0 -[DEBUG] Previous mode: machine -[DEBUG] Bad instruction pc: 0x8103f7c0 -[DEBUG] Bad address: 0x00000000 -[DEBUG] Stored ra: 0x8103f7b8 -[DEBUG] Stored sp: 0x82032f08 -Bad instruction pc: 0x8103f7c0 in my elf file instruction is "mret". -So I can not jump to my kernel's load address. -I think when I use -bios option,my qemu should in M mode.How could I can jump to my mepc address? -Steps to reproduce: -1.download qemu -2.download coreboot -Additional information: -When I enter qemu with -bios option,I find that the reg mstatus is 0xa0000000. |