From e95c0bebeb14cff62c1f0f55e72c2973c9f55e62 Mon Sep 17 00:00:00 2001 From: Sam Leffler Date: Fri, 19 Aug 2022 21:05:20 +0000 Subject: [PATCH] Merge "hello: use ProcessManager-supplied value to setup __sel4_ipc_buffer" GitOrigin-RevId: cc80eb54acc4305aa54ce884f25b8577fdae2642 --- apps/c/hello/hello.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/apps/c/hello/hello.c b/apps/c/hello/hello.c index 7ff65e1..c54d8cf 100644 --- a/apps/c/hello/hello.c +++ b/apps/c/hello/hello.c @@ -23,7 +23,10 @@ __attribute__((naked)) void _start() { ".option push \n" ".option norelax \n" "la gp, __global_pointer$ \n" - "la x4, minisel_tls \n" + "la tp, minisel_tls \n" + "lui t1,0 \n" + "add t1,t1,tp \n" + "sw a0,0(t1) # __sel4_ipc_buffer>\n" "addi sp,sp,-16 \n" "sw a0, 12(sp) \n" "sw a1, 8(sp) \n" @@ -57,7 +60,9 @@ void minisel_printf(const char *fmt, ...) { } int main(int a0, int a1, int a2, int a3) { - minisel_printf("\na0 %x a1 %x a2 %x a3 %x\n", a0, a1, a2, a3); + minisel_printf("\nI am a C app!\n"); + minisel_printf("a0 %x a1 %x a2 %x a3 %x\n", a0, a1, a2, a3); + minisel_printf("__sel4_ipc_buffer %x\n", __sel4_ipc_buffer); minisel_printf("Done, sleeping in WFI loop\n"); while (1) {