Structures and macros for accessing the local APIC. More...
#include "types.h"Namespaces | |
| LAPIC | |
| Abstracts the local APIC (which is integrated into every CPU core)In modern (x86) PCs, every CPU core has its own Local APIC (LAPIC). The LAPIC is the link between the local CPU core and the I/O APIC (that takes care about external interrupt sources. Interrupt messages received by the LAPIC will be passed to the corresponding CPU core and trigger the interrupt handler on this core. | |
Typedefs | |
| typedef uint32_t | LAPIC::Register |
Enumerations | |
| enum | LAPIC::Index : uint16_t { LAPIC::IDENTIFICATION = 0x020, LAPIC::VERSION = 0x030, LAPIC::TASK_PRIORITY = 0x080, LAPIC::EOI = 0x0b0, LAPIC::LOGICAL_DESTINATION = 0x0d0, LAPIC::DESTINATION_FORMAT = 0x0e0, LAPIC::SPURIOUS_INTERRUPT_VECTOR = 0x0f0, LAPIC::INTERRUPT_COMMAND_REGISTER_LOW = 0x300, LAPIC::INTERRUPT_COMMAND_REGISTER_HIGH = 0x310, LAPIC::TIMER_CONTROL = 0x320, LAPIC::TIMER_INITIAL_COUNTER = 0x380, LAPIC::TIMER_CURRENT_COUNTER = 0x390, LAPIC::TIMER_DIVIDE_CONFIGURATION = 0x3e0 } |
| Register Offset Index. More... | |
Functions | |
| Register | LAPIC::read (Index idx) |
| Get value from APIC register. More... | |
| void | LAPIC::write (Index idx, Register value) |
| Write value to APIC register. More... | |
Structures and macros for accessing the local APIC.