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 | 58f337e1052d006cd8d121925b14153ec37e4106 (patch) | |
| tree | ecf4023b4ee0c91555c1d8263762fcb9dcb04a17 /src/core/arm/cpu_interrupt_handler.cpp | |
| parent | 8f4ce08e759566af3f4a1a0687c650858884955a (diff) | |
| parent | 94a51e6b212e989be5ffb2a38dfcdc3140640cfe (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 0000000000..2f1a1a269b --- /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 |
