summaryrefslogtreecommitdiff
path: root/Kernel/Arch/aarch64/Processor.h
diff options
context:
space:
mode:
authorTimon Kruiper <timonkruiper@gmail.com>2022-12-22 13:24:19 +0100
committerAndrew Kaster <andrewdkaster@gmail.com>2022-12-29 19:32:20 -0700
commitf6f43fd65e6b0d046eb6ec8f2a5e8eaf48555634 (patch)
tree8f40b5f88973883a2e1a2564bb0a2c626056ed93 /Kernel/Arch/aarch64/Processor.h
parentf232133f65aa50269ca1105421f7cba04496f8c2 (diff)
downloadserenity-f6f43fd65e6b0d046eb6ec8f2a5e8eaf48555634.zip
Kernel: Add Processor::wait_for_interrupt and use it in Scheduler
This removes the x86 specific hlt instruction from the scheduler, and allows us to run the scheduler code for aarch64 by implementing Processor::wait_for_interrupt for aarch64.
Diffstat (limited to 'Kernel/Arch/aarch64/Processor.h')
-rw-r--r--Kernel/Arch/aarch64/Processor.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/Kernel/Arch/aarch64/Processor.h b/Kernel/Arch/aarch64/Processor.h
index 4b8a30b907..1603196ccf 100644
--- a/Kernel/Arch/aarch64/Processor.h
+++ b/Kernel/Arch/aarch64/Processor.h
@@ -56,12 +56,17 @@ public:
void idle_begin() const
{
- TODO_AARCH64();
+ // FIXME: Implement this when SMP for aarch64 is supported.
}
void idle_end() const
{
- TODO_AARCH64();
+ // FIXME: Implement this when SMP for aarch64 is supported.
+ }
+
+ void wait_for_interrupt() const
+ {
+ asm("wfi");
}
ALWAYS_INLINE static void pause()