MOS Source Code
|
#include <mos/types.h>
Go to the source code of this file.
Macros | |
#define | APIC_REG_LAPIC_ID 0x20 |
Enumerations | |
enum | lapic_delivery_mode_t { APIC_DELIVER_MODE_NORMAL = 0 , APIC_DELIVER_MODE_LOWEST_PRIORITY = 1 , APIC_DELIVER_MODE_SMI = 2 , APIC_DELIVER_MODE_NMI = 4 , APIC_DELIVER_MODE_INIT = 5 , APIC_DELIVER_MODE_INIT_DEASSERT = APIC_DELIVER_MODE_INIT , APIC_DELIVER_MODE_STARTUP = 6 } |
enum | lapic_dest_mode_t { LAPIC_DEST_MODE_PHYSICAL = 0 , LAPIC_DEST_MODE_LOGICAL = 1 } |
enum | lapic_shorthand_t { LAPIC_SHORTHAND_NONE = 0 , LAPIC_SHORTHAND_SELF = 1 , LAPIC_SHORTHAND_ALL = 2 , LAPIC_SHORTHAND_ALL_EXCLUDING_SELF = 3 } |
enum | ioapic_trigger_mode_t { IOAPIC_TRIGGER_MODE_EDGE = 0 , IOAPIC_TRIGGER_MODE_LEVEL = 1 } |
enum | ioapic_polarity_t { IOAPIC_POLARITY_ACTIVE_HIGH = 0 , IOAPIC_POLARITY_ACTIVE_LOW = 1 } |
Functions | |
void | lapic_enable (void) |
void | lapic_interrupt (u8 vec, u8 dest, lapic_delivery_mode_t delivery_mode, lapic_dest_mode_t dest_mode, lapic_shorthand_t shorthand) |
void | lapic_interrupt_full (u8 vec, u8 dest, lapic_delivery_mode_t dliv_mode, lapic_dest_mode_t dstmode, bool lvl, bool trigger, lapic_shorthand_t sh) |
u32 | lapic_read32 (u32 offset) |
u64 | lapic_read64 (u32 offset) |
void | lapic_write32 (u32 offset, u32 value) |
void | lapic_write64 (u32 offset, u64 value) |
void | lapic_eoi (void) |
should_inline u8 | lapic_get_id (void) |
void | ioapic_init (void) |
void | ioapic_enable_with_mode (u32 irq, u32 cpu, ioapic_trigger_mode_t trigger_mode, ioapic_polarity_t polarity) |
void | ioapic_disable (u32 irq) |
void | lapic_set_timer (u32 initial_count) |
should_inline void | ioapic_enable_interrupt (u32 irq, u32 lapic_id) |
#define APIC_REG_LAPIC_ID 0x20 |
Definition at line 8 of file apic.h.
Referenced by lapic_get_id().
enum lapic_dest_mode_t |
enum lapic_shorthand_t |
enum ioapic_polarity_t |
Definition at line 136 of file lapic.c.
Referenced by platform_ap_entry(), and platform_startup_late().
void lapic_interrupt | ( | u8 | vec, |
u8 | dest, | ||
lapic_delivery_mode_t | delivery_mode, | ||
lapic_dest_mode_t | dest_mode, | ||
lapic_shorthand_t | shorthand ) |
Definition at line 111 of file lapic.c.
Referenced by platform_ipi_send().
void lapic_interrupt_full | ( | u8 | vec, |
u8 | dest, | ||
lapic_delivery_mode_t | dliv_mode, | ||
lapic_dest_mode_t | dstmode, | ||
bool | lvl, | ||
bool | trigger, | ||
lapic_shorthand_t | sh ) |
Definition at line 94 of file lapic.c.
Referenced by lapic_interrupt().
Definition at line 56 of file lapic.c.
Referenced by lapic_enable(), lapic_get_id(), and lapic_wait_sent().
Definition at line 72 of file lapic.c.
Referenced by lapic_enable(), lapic_eoi(), lapic_interrupt_full(), and lapic_set_timer().
Definition at line 79 of file lapic.c.
Referenced by lapic_interrupt_full().
Definition at line 158 of file lapic.c.
Referenced by x86_handle_irq(), and x86_interrupt_entry().
should_inline u8 lapic_get_id | ( | void | ) |
Definition at line 45 of file apic.h.
Referenced by platform_ap_entry(), platform_startup_late(), x86_handle_exception(), and x86_handle_nmi().
Definition at line 93 of file ioapic.c.
Referenced by platform_startup_late().
void ioapic_enable_with_mode | ( | u32 | irq, |
u32 | cpu, | ||
ioapic_trigger_mode_t | trigger_mode, | ||
ioapic_polarity_t | polarity ) |
Definition at line 125 of file ioapic.c.
Referenced by ioapic_enable_interrupt().
Definition at line 139 of file ioapic.c.
Referenced by ioapic_init().
Definition at line 151 of file lapic.c.
Referenced by x86_setup_lapic_timer().
should_inline void ioapic_enable_interrupt | ( | u32 | irq, |
u32 | lapic_id ) |
Definition at line 71 of file apic.h.
Referenced by platform_startup_late().