aboutsummaryrefslogtreecommitdiff
path: root/arch/riscv64
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2022-05-28 14:12:23 +0300
committerKimplul <kimi.h.kuparinen@gmail.com>2022-05-28 14:12:23 +0300
commitceea33c4557ff35242889f347b5da68dd9e53908 (patch)
tree267c92a29f26a78be9a5083bc7d5f6298e52876b /arch/riscv64
parent96e5d8dc99010e2cec8bd2edf59545bd13f6f769 (diff)
downloadkmi-ceea33c4557ff35242889f347b5da68dd9e53908.tar.gz
kmi-ceea33c4557ff35242889f347b5da68dd9e53908.zip
implement set_ipc on riscv
Diffstat (limited to 'arch/riscv64')
-rw-r--r--arch/riscv64/kernel/proc.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/riscv64/kernel/proc.c b/arch/riscv64/kernel/proc.c
index 0eb3ad2..85c7bb2 100644
--- a/arch/riscv64/kernel/proc.c
+++ b/arch/riscv64/kernel/proc.c
@@ -25,6 +25,14 @@ stat_t set_return(vm_t v)
return OK;
}
+stat_t set_ipc(struct tcb *t, id_t pid, id_t tid)
+{
+ struct riscv_regs *r = (struct riscv_regs *)(--t);
+ r->a2 = (long)pid;
+ r->a3 = (long)tid;
+ return OK;
+}
+
stat_t set_thread(struct tcb *t, vm_t stack)
{
/* get location of registers in memory */