From 32f4c8df6ca097288b8d49e253b52b01e5cdbb26 Mon Sep 17 00:00:00 2001 From: Timon Kruiper Date: Tue, 25 Oct 2022 18:44:54 +0200 Subject: Kernel: Stub more functions to progress aarch64 build --- Kernel/Arch/aarch64/InterruptManagement.cpp | 5 +++++ Kernel/Arch/aarch64/InterruptManagement.h | 2 ++ Kernel/Arch/aarch64/Processor.h | 22 ++++++++++++++++++++++ Kernel/Arch/aarch64/RegisterState.h | 1 + Kernel/Storage/StorageManagement.cpp | 7 ++++++- 5 files changed, 36 insertions(+), 1 deletion(-) diff --git a/Kernel/Arch/aarch64/InterruptManagement.cpp b/Kernel/Arch/aarch64/InterruptManagement.cpp index 2a177e194b..7f93c63422 100644 --- a/Kernel/Arch/aarch64/InterruptManagement.cpp +++ b/Kernel/Arch/aarch64/InterruptManagement.cpp @@ -54,4 +54,9 @@ NonnullLockRefPtr InterruptManagement::get_responsible_irq_contro return m_interrupt_controllers[0]; } +void InterruptManagement::enumerate_interrupt_handlers(Function) +{ + TODO_AARCH64(); +} + } diff --git a/Kernel/Arch/aarch64/InterruptManagement.h b/Kernel/Arch/aarch64/InterruptManagement.h index b0a82983c2..697ce70bde 100644 --- a/Kernel/Arch/aarch64/InterruptManagement.h +++ b/Kernel/Arch/aarch64/InterruptManagement.h @@ -23,6 +23,8 @@ public: Vector> const& controllers(); NonnullLockRefPtr get_responsible_irq_controller(u8 interrupt_vector); + void enumerate_interrupt_handlers(Function); + private: InterruptManagement() = default; void find_controllers(); diff --git a/Kernel/Arch/aarch64/Processor.h b/Kernel/Arch/aarch64/Processor.h index 38ae725aeb..5a3d974a6e 100644 --- a/Kernel/Arch/aarch64/Processor.h +++ b/Kernel/Arch/aarch64/Processor.h @@ -215,6 +215,28 @@ public: return *g_current_processor; } + template Callback> + static inline IterationDecision for_each(Callback) + { + TODO_AARCH64(); + } + + template Callback> + static inline IterationDecision for_each(Callback) + { + TODO_AARCH64(); + } + + u64 time_spent_idle() const + { + TODO_AARCH64(); + } + + static u32 count() + { + TODO_AARCH64(); + } + // FIXME: Move this into generic Processor class, when there is such a class. ALWAYS_INLINE static bool is_bootstrap_processor() { diff --git a/Kernel/Arch/aarch64/RegisterState.h b/Kernel/Arch/aarch64/RegisterState.h index 24e851c699..2ebd81f69e 100644 --- a/Kernel/Arch/aarch64/RegisterState.h +++ b/Kernel/Arch/aarch64/RegisterState.h @@ -32,6 +32,7 @@ struct RegisterState { (void)value; TODO_AARCH64(); } + FlatPtr bp() const { TODO_AARCH64(); } }; inline void copy_kernel_registers_into_ptrace_registers(PtraceRegisters& ptrace_regs, RegisterState const& kernel_regs) diff --git a/Kernel/Storage/StorageManagement.cpp b/Kernel/Storage/StorageManagement.cpp index 1c3fc8d4fd..49f2d0b323 100644 --- a/Kernel/Storage/StorageManagement.cpp +++ b/Kernel/Storage/StorageManagement.cpp @@ -102,11 +102,16 @@ UNMAP_AFTER_INIT void StorageManagement::enumerate_pci_controllers(bool force_pi } } -#if ARCH(I386) || ARCH(X86_64) auto subclass_code = static_cast(device_identifier.subclass_code().value()); +#if ARCH(I386) || ARCH(X86_64) if (subclass_code == SubclassID::IDEController && kernel_command_line().is_ide_enabled()) { m_controllers.append(PCIIDELegacyModeController::initialize(device_identifier, force_pio)); } +#elif ARCH(AARCH64) + (void)force_pio; + TODO_AARCH64(); +#else +# error Unknown architecture #endif if (subclass_code == SubclassID::SATAController -- cgit v1.2.3