Files
jsix_import/src/modules/main/device_manager.h
Justin C. Miller 504de44ff3 Make APIC addresses uint32_t*
APIC registers need to be read/written 32 bits at a time, so
best to keep these as pointers to that size.
2018-04-17 09:20:56 -07:00

26 lines
439 B
C++

#pragma once
struct acpi_xsdt;
struct acpi_apic;
class device_manager
{
public:
device_manager(const void *root_table);
device_manager() = delete;
device_manager(const device_manager &) = delete;
uint8_t * local_apic() const;
uint8_t * io_apic() const;
private:
uint32_t *m_local_apic;
uint32_t *m_io_apic;
uint32_t m_global_interrupt_base;
void load_xsdt(const acpi_xsdt *xsdt);
void load_apic(const acpi_apic *apic);
};