summaryrefslogtreecommitdiff
path: root/src/core/arm/arm_interface.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/arm/arm_interface.h')
-rw-r--r--src/core/arm/arm_interface.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/arm/arm_interface.h b/src/core/arm/arm_interface.h
index e701ddf21..dc9b2ff7b 100644
--- a/src/core/arm/arm_interface.h
+++ b/src/core/arm/arm_interface.h
@@ -7,6 +7,7 @@
7#include <array> 7#include <array>
8#include <vector> 8#include <vector>
9#include "common/common_types.h" 9#include "common/common_types.h"
10#include "core/hardware_properties.h"
10 11
11namespace Common { 12namespace Common {
12struct PageTable; 13struct PageTable;
@@ -20,11 +21,13 @@ namespace Core {
20class System; 21class System;
21class CPUInterruptHandler; 22class CPUInterruptHandler;
22 23
24using CPUInterrupts = std::array<CPUInterruptHandler, Core::Hardware::NUM_CPU_CORES>;
25
23/// Generic ARMv8 CPU interface 26/// Generic ARMv8 CPU interface
24class ARM_Interface : NonCopyable { 27class ARM_Interface : NonCopyable {
25public: 28public:
26 explicit ARM_Interface(System& system_, CPUInterruptHandler& interrupt_handler) 29 explicit ARM_Interface(System& system_, CPUInterrupts& interrupt_handlers)
27 : system{system_}, interrupt_handler{interrupt_handler} {} 30 : system{system_}, interrupt_handlers{interrupt_handlers} {}
28 virtual ~ARM_Interface() = default; 31 virtual ~ARM_Interface() = default;
29 32
30 struct ThreadContext32 { 33 struct ThreadContext32 {
@@ -180,7 +183,7 @@ public:
180protected: 183protected:
181 /// System context that this ARM interface is running under. 184 /// System context that this ARM interface is running under.
182 System& system; 185 System& system;
183 CPUInterruptHandler& interrupt_handler; 186 CPUInterrupts& interrupt_handlers;
184}; 187};
185 188
186} // namespace Core 189} // namespace Core