[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [PATCH 24/40] arm64: implement the run_idle_thread



The patch implements the run_idle_thread() for the idle thread.

Change-Id: If6a28c659fd2023896ffff184526b38f70c72e9b
Jira: ENTOS-247
Signed-off-by: Huang Shijie <shijie.huang@xxxxxxx>
---
 arch/arm/sched.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/arm/sched.c b/arch/arm/sched.c
index a209513..448fd3e 100644
--- a/arch/arm/sched.c
+++ b/arch/arm/sched.c
@@ -37,6 +37,7 @@ struct thread* arch_create_thread(char *name, void 
(*function)(void *),
     return thread;
 }
 
+#if defined(__arm__)
 void run_idle_thread(void)
 {
     __asm__ __volatile__ ("mov sp, %0; bx %1"::
@@ -44,3 +45,13 @@ void run_idle_thread(void)
             "r"(idle_thread->ip));
     /* Never arrive here! */
 }
+
+#elif defined(__aarch64__)
+void run_idle_thread(void)
+{
+    __asm__ __volatile__ ("mov sp, %0; br %1"::
+                   "r"(idle_thread->sp), "r"(idle_thread->ip));
+    /* Never arrive here! */
+}
+
+#endif
-- 
2.7.4


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/cgi-bin/mailman/listinfo/minios-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.