diff options
| author | bunnei <bunneidev@gmail.com> | 2020-06-28 12:37:50 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-28 12:37:50 -0400 |
| commit | b05795d704e0c194215f815a5703db09e524b59a (patch) | |
| tree | ecf4023b4ee0c91555c1d8263762fcb9dcb04a17 /src/core/arm/cpu_interrupt_handler.cpp | |
| parent | 8596a127724e9d7e27c4d7d9becd323c8d6d4f8e (diff) | |
| parent | 2f8947583f2f0af4058600243d6c1d244e3c4890 (diff) | |
Merge pull request #3955 from FernandoS27/prometheus-2b
Remake Kernel Scheduling, CPU Management & Boot Management (Prometheus)
Diffstat (limited to 'src/core/arm/cpu_interrupt_handler.cpp')
| -rw-r--r-- | src/core/arm/cpu_interrupt_handler.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/core/arm/cpu_interrupt_handler.cpp b/src/core/arm/cpu_interrupt_handler.cpp new file mode 100644 index 000000000..2f1a1a269 --- /dev/null +++ b/src/core/arm/cpu_interrupt_handler.cpp @@ -0,0 +1,29 @@ +// Copyright 2020 yuzu emulator team +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include "common/thread.h" +#include "core/arm/cpu_interrupt_handler.h" + +namespace Core { + +CPUInterruptHandler::CPUInterruptHandler() : is_interrupted{} { + interrupt_event = std::make_unique<Common::Event>(); +} + +CPUInterruptHandler::~CPUInterruptHandler() = default; + +void CPUInterruptHandler::SetInterrupt(bool is_interrupted_) { + if (is_interrupted_) { + interrupt_event->Set(); + } + this->is_interrupted = is_interrupted_; +} + +void CPUInterruptHandler::AwaitInterrupt() { + interrupt_event->Wait(); +} + +} // namespace Core |
