mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-10-21 23:50:06 +00:00
mmap() & mmap_region() methods are removed from ACPI & DMI components, and we replace them with the new MM.allocate_kernel_region() helper. Instead of doing a raw calculation for each VM address, from now on we can use helper functions to do perform those calculations in a neat, reusable and readable way.
30 lines
No EOL
786 B
C++
30 lines
No EOL
786 B
C++
#pragma once
|
|
|
|
#include <AK/Types.h>
|
|
#include <Kernel/ACPI/Definitions.h>
|
|
#include <Kernel/FileSystem/File.h>
|
|
#include <Kernel/VM/PhysicalAddress.h>
|
|
#include <Kernel/VM/Region.h>
|
|
#include <Kernel/VM/VirtualAddress.h>
|
|
|
|
class ACPIParser {
|
|
public:
|
|
static ACPIParser& the();
|
|
|
|
static bool is_initialized();
|
|
static void initialize_limited();
|
|
virtual ACPI_RAW::SDTHeader* find_table(const char* sig);
|
|
|
|
virtual void do_acpi_reboot();
|
|
virtual void do_acpi_shutdown();
|
|
|
|
virtual void enable_aml_interpretation();
|
|
virtual void enable_aml_interpretation(File&);
|
|
virtual void enable_aml_interpretation(u8*, u32);
|
|
virtual void disable_aml_interpretation();
|
|
virtual bool is_operable();
|
|
|
|
protected:
|
|
explicit ACPIParser(bool usable);
|
|
bool m_operable;
|
|
}; |