Warning, cross-references for /kernel/include/smp/apic.h need to be fixed.
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 #ifndef _APIC_H_
0019 #define _APIC_H_
0020
0021 #include "types.h"
0022 #include "smp/apic-defs.h"
0023 #include "smp/smp.h"
0024
0025 uint8 LAPIC_get_physical_ID (void);
0026 void LAPIC_set_logical_destination (uint32);
0027 void LAPIC_enable_timer (uint8, bool, uint8);
0028 void send_eoi (void);
0029 void LAPIC_start_timer (uint32);
0030 int LAPIC_send_ipi (uint32, uint32);
0031 uint32 LAPIC_clear_error (void);
0032 void LAPIC_set_task_priority (uint8);
0033
0034 #define MAX_IOAPICS MAX_CPUS
0035
0036 uint64 IOAPIC_read64 (uint8);
0037 void IOAPIC_write64 (uint8, uint64);
0038 mp_IOAPIC_info *IOAPIC_lookup (uint8);
0039 int IOAPIC_map_GSI (uint32, uint8, uint64);
0040 int IOAPIC_get_GSI_mapping (uint32 GSI, uint8 *vector, uint64 *flags);
0041 uint32 IOAPIC_num_entries (void);
0042 extern uint32 mp_ISA_bus_id;
0043
0044 #endif
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055