Lines Matching +full:riscv +full:- +full:sbi
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
40 #include <machine/sbi.h>
59 #include "riscv.h"
82 vme = vmrun->vm_exit; in vmexit_inst_emul()
83 vie = &vme->u.inst_emul.vie; in vmexit_inst_emul()
85 err = emulate_mem(vcpu, vme->u.inst_emul.gpa, vie, in vmexit_inst_emul()
86 &vme->u.inst_emul.paging); in vmexit_inst_emul()
90 vme->u.inst_emul.gpa); in vmexit_inst_emul()
99 FPRINTLN(stderr, "at 0x%lx", vme->pc); in vmexit_inst_emul()
110 vme = vmrun->vm_exit; in vmexit_suspend()
111 how = vme->u.suspended.how; in vmexit_suspend()
140 * XXX-MJ sleep for a short period to avoid chewing up the CPU in the in vmexit_debug()
185 hart_id = vme->u.ecall.args[0]; in vmexit_ecall_hsm()
186 func_id = vme->u.ecall.args[6]; in vmexit_ecall_hsm()
205 vme->u.ecall.args[1]); in vmexit_ecall_hsm()
210 vme->u.ecall.args[2]); in vmexit_ecall_hsm()
241 sbi_function_id = vme->u.ecall.args[6]; in vmexit_ecall_base()
255 ext_id = vme->u.ecall.args[0]; in vmexit_ecall_base()
284 func_id = vme->u.ecall.args[6]; in vmexit_ecall_srst()
285 type = vme->u.ecall.args[0]; in vmexit_ecall_srst()
315 vme = vmrun->vm_exit; in vmexit_ecall()
317 sbi_extension_id = vme->u.ecall.args[7]; in vmexit_ecall()
331 /* Unknown SBI extension. */ in vmexit_ecall()
349 vme = vmrun->vm_exit; in vmexit_hyp()
351 printf("unhandled exception: scause %#lx\n", vme->u.hyp.scause); in vmexit_hyp()