aboutsummaryrefslogtreecommitdiff
path: root/lib/sbi/sbi_illegal_insn.c
diff options
context:
space:
mode:
authorAnup Patel <anup.patel@wdc.com>2020-03-19 19:46:00 +0530
committerAnup Patel <anup@brainfault.org>2020-03-28 13:32:07 +0530
commitd11c79cd977443defe4260beec976fad29719eaf (patch)
tree7c3cfb19ecac01e346ea477adbebc889a9146f4a /lib/sbi/sbi_illegal_insn.c
parentcb78a482314e8e3c7f423bb13fc50bbd50c59b13 (diff)
lib: sbi_emulate_csr: Remove scratch and hartid parameter
We remove scratch and hartid parameter from various functions for CSR emulation because we can always get current HART id and current scratch pointer using just one CSR access. Signed-off-by: Anup Patel <anup.patel@wdc.com> Reviewed-by: Atish Patra <atish.patra@wdc.com>
Diffstat (limited to 'lib/sbi/sbi_illegal_insn.c')
-rw-r--r--lib/sbi/sbi_illegal_insn.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/sbi/sbi_illegal_insn.c b/lib/sbi/sbi_illegal_insn.c
index a374fa2..980b7dd 100644
--- a/lib/sbi/sbi_illegal_insn.c
+++ b/lib/sbi/sbi_illegal_insn.c
@@ -57,7 +57,7 @@ static int system_opcode_insn(ulong insn, u32 hartid, ulong mcause,
return truly_illegal_insn(insn, hartid, mcause,
regs, scratch);
- if (sbi_emulate_csr_read(csr_num, hartid, regs, scratch, &csr_val))
+ if (sbi_emulate_csr_read(csr_num, regs, &csr_val))
return truly_illegal_insn(insn, hartid, mcause,
regs, scratch);
@@ -87,8 +87,7 @@ static int system_opcode_insn(ulong insn, u32 hartid, ulong mcause,
return truly_illegal_insn(insn, hartid, mcause, regs, scratch);
};
- if (do_write && sbi_emulate_csr_write(csr_num, hartid, regs,
- scratch, new_csr_val))
+ if (do_write && sbi_emulate_csr_write(csr_num, regs, new_csr_val))
return truly_illegal_insn(insn, hartid, mcause, regs, scratch);
SET_RD(insn, regs, csr_val);