summaryrefslogtreecommitdiff
path: root/lib/sbi/sbi_ecall_hsm.c
diff options
context:
space:
mode:
authorAnup Patel <anup.patel@wdc.com>2020-03-19 19:25:12 +0300
committerAnup Patel <anup@brainfault.org>2020-03-28 11:02:20 +0300
commit7487116b41e6c06d3903b600a2231d2a68d0c4a4 (patch)
tree1ed0174c5271e57a4554d8bdd6ffea16cbe60b2a /lib/sbi/sbi_ecall_hsm.c
parentfe37d7da29f67ae8ccc31f06e0f3e6c9a6b58054 (diff)
downloadopensbi-7487116b41e6c06d3903b600a2231d2a68d0c4a4.tar.xz
lib: sbi_ecall: Remove mcause, scratch and hartid parameters
We remove mcause, scratch and hartid parameters from various functions for ecall handling 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_ecall_hsm.c')
-rw-r--r--lib/sbi/sbi_ecall_hsm.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/sbi/sbi_ecall_hsm.c b/lib/sbi/sbi_ecall_hsm.c
index 5b77726..028bf68 100644
--- a/lib/sbi/sbi_ecall_hsm.c
+++ b/lib/sbi/sbi_ecall_hsm.c
@@ -12,15 +12,15 @@
#include <sbi/sbi_error.h>
#include <sbi/sbi_version.h>
#include <sbi/sbi_hsm.h>
+#include <sbi/sbi_scratch.h>
#include <sbi/riscv_asm.h>
-static int sbi_ecall_hsm_handler(struct sbi_scratch *scratch,
- unsigned long extid, unsigned long funcid,
+static int sbi_ecall_hsm_handler(unsigned long extid, unsigned long funcid,
unsigned long *args, unsigned long *out_val,
struct sbi_trap_info *out_trap)
{
- int ret = 0;
- int hstate;
+ int ret = 0, hstate;
+ struct sbi_scratch *scratch = sbi_scratch_thishart_ptr();
switch (funcid) {
case SBI_EXT_HSM_HART_START: