diff options
Diffstat (limited to 'kernel/arch/aarch64/Processor.h')
| -rw-r--r-- | kernel/arch/aarch64/Processor.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/kernel/arch/aarch64/Processor.h b/kernel/arch/aarch64/Processor.h new file mode 100644 index 0000000..81be414 --- /dev/null +++ b/kernel/arch/aarch64/Processor.h @@ -0,0 +1,29 @@ +#pragma once +// ============================================================================ +// arch/aarch64/Processor.h - AArch64 per-CPU state +// ============================================================================ + +#include <stdint.h> +#include <kernel/types.h> + +struct BootInfo; + +class Processor { +public: + void InitEarly(const BootInfo& boot_info); + + // Phase 2 will add: + // PhysAddr GetGicBase() const; + // uint64_t GetVbarEl1() const; + // PhysAddr GetTtbr0() const; + // PhysAddr GetTtbr1() const; + + Processor() = default; + Processor(const Processor&) = delete; + Processor& operator=(const Processor&) = delete; + +private: + // Phase 2: gic_base, vbar_el1, ttbr0, ttbr1... +}; + +Processor& processor(); |
