StuBS
|
#include "machine/apic.h"
#include "machine/acpi.h"
#include "machine/core.h"
#include "machine/cmos.h"
#include "machine/ioport.h"
#include "machine/lapic.h"
#include "machine/lapic_registers.h"
#include "utils/string.h"
#include "debug/assert.h"
#include "debug/output.h"
Namespaces | |
namespace | APIC |
Information about the (extended) Advanced Programmable Interrupt Controller. | |
Functions | |
bool | APIC::init () |
Executes system detection. | |
uint8_t | APIC::getIOAPICSlot (APIC::Device device) |
Returns the pin number the device is connected to. | |
uintptr_t | APIC::getIOAPICAddress () |
Queries the physical I/O-APIC address determined during system boot. | |
uint8_t | APIC::getIOAPICID () |
Queries of ID of the I/O-APIC determined during system boot. | |
uint8_t | APIC::getLogicalAPICID (uint8_t core) |
Returns the logical ID of the Local APIC passed for core. | |
uint8_t | APIC::getLAPICID (uint8_t core) |
Get the Local APIC ID of a CPU. | |
Constants | ||
struct { | ||
uint32_t | id | |
uintptr_t | address | |
uint32_t | interrupt_base | |
} | APIC::ioapic | |
static uint8_t | APIC::slot_map [16] | |
static uint8_t | APIC::lapic_id [Core::MAX] | |
static unsigned | APIC::lapics = 0 | |