diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-11-24 03:02:43 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-11-24 03:02:43 +0100 |
| commit | 83d870e58457a1d335a1d9b9966a6a1887cc297b (patch) | |
| tree | 72888f88c7728c82f3f6df1f4f70591de15eab36 /dev/kernel/HALKit/POWER/HalApplicationProcessor.cc | |
| parent | ab37adbacf0f33845804c788b39680cd754752a8 (diff) | |
feat! breaking changes on kernel sources.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel/HALKit/POWER/HalApplicationProcessor.cc')
| -rw-r--r-- | dev/kernel/HALKit/POWER/HalApplicationProcessor.cc | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/dev/kernel/HALKit/POWER/HalApplicationProcessor.cc b/dev/kernel/HALKit/POWER/HalApplicationProcessor.cc deleted file mode 100644 index 84d9b1c1..00000000 --- a/dev/kernel/HALKit/POWER/HalApplicationProcessor.cc +++ /dev/null @@ -1,43 +0,0 @@ -/* ======================================== - - Copyright (C) 2024-2025, Amlal El Mahrouss, licensed under the Apache 2.0 license. - -======================================== */ - -#include <HALKit/POWER/AP.h> -#include <HALKit/POWER/Processor.h> -#include <KernelKit/DebugOutput.h> - -/// @note This part of the HAL needs an owner. - -namespace Kernel::Detail { -STATIC void mp_hang_fn(void) { - while (YES) - ; -} -} // namespace Kernel::Detail - -namespace Kernel { -/// @brief wakes up thread. -/// wakes up thread from hang. -void mp_wakeup_thread(HAL::StackFramePtr stack) { - if (!stack) return; - - MUST_PASS(stack->R15 > 0); - MUST_PASS(stack->IP > 0); - - hal_set_pc_to_hart(reinterpret_cast<HAL_HARDWARE_THREAD*>(stack->R15), - reinterpret_cast<VoidPtr>(stack->IP)); -} - -/// @brief makes thread sleep. -/// hooks and hangs thread to prevent code from executing. -void mp_hang_thread(HAL::StackFramePtr stack) { - if (!stack) return; - - MUST_PASS(stack->R15 > 0); - - hal_set_pc_to_hart(reinterpret_cast<HAL_HARDWARE_THREAD*>(stack->R15), - reinterpret_cast<VoidPtr>(Kernel::Detail::mp_hang_fn)); -} -} // namespace Kernel |
