aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/include
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@ost.ch>2026-04-08 14:20:48 +0200
committerFelix Morgner <felix.morgner@ost.ch>2026-04-08 14:20:48 +0200
commitce47b93e8834bb4811e788737ae1a6ea750af79c (patch)
tree4bf41d355623e19cc2a6ba8a0aec7c7efe2c8042 /arch/x86_64/include
parent77b408b4e18fabb29f4cab5e899e7c8db1bc1204 (diff)
downloadteachos-ce47b93e8834bb4811e788737ae1a6ea750af79c.tar.xz
teachos-ce47b93e8834bb4811e788737ae1a6ea750af79c.zip
x86_64: implement LAPIC initialization
Diffstat (limited to 'arch/x86_64/include')
-rw-r--r--arch/x86_64/include/arch/devices/local_apic.hpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/x86_64/include/arch/devices/local_apic.hpp b/arch/x86_64/include/arch/devices/local_apic.hpp
index 71e9758..7f125c3 100644
--- a/arch/x86_64/include/arch/devices/local_apic.hpp
+++ b/arch/x86_64/include/arch/devices/local_apic.hpp
@@ -17,10 +17,14 @@ namespace arch::devices
auto init() -> bool override;
private:
+ [[nodiscard]] auto read_register(std::size_t offset) const -> std::uint32_t;
+ auto write_register(std::size_t offset, std::uint32_t value) -> void;
+
std::uint64_t m_hardware_id{};
kapi::memory::physical_address m_base{};
+ kapi::memory::linear_address m_virtual_base{};
};
} // namespace arch::devices
-#endif \ No newline at end of file
+#endif