Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 575 → Rev 576

/kernel/trunk/arch/ia32/src/smp/apic.c
32,6 → 32,7
#include <arch/smp/mps.h>
#include <mm/page.h>
#include <time/delay.h>
#include <interrupt.h>
#include <arch/interrupt.h>
#include <print.h>
#include <arch/asm.h>
108,6 → 109,10
};
#endif /* LAPIC_VERBOSE */
 
 
static void apic_spurious(int n, void *stack);
static void l_apic_timer_interrupt(int n, void *stack);
 
/** Initialize APIC on BSP. */
void apic_init(void)
{
114,7 → 119,7
io_apic_id_t idreg;
int i;
 
trap_register(VECTOR_APIC_SPUR, apic_spurious);
exc_register(VECTOR_APIC_SPUR, "apic_spurious", apic_spurious);
 
enable_irqs_function = io_apic_enable_irqs;
disable_irqs_function = io_apic_disable_irqs;
126,7 → 131,7
* Other interrupts will be forwarded to the lowest priority CPU.
*/
io_apic_disable_irqs(0xffff);
trap_register(VECTOR_CLK, l_apic_timer_interrupt);
exc_register(VECTOR_CLK, "l_apic_timer", l_apic_timer_interrupt);
for (i = 0; i < IRQ_COUNT; i++) {
int pin;
162,7 → 167,7
* @param n Interrupt vector.
* @param stack Interrupted stack.
*/
void apic_spurious(__u8 n, __native stack[])
void apic_spurious(int n, void *stack)
{
printf("cpu%d: APIC spurious interrupt\n", CPU->id);
}
401,7 → 406,7
* @param n Interrupt vector number.
* @param stack Interrupted stack.
*/
void l_apic_timer_interrupt(__u8 n, __native stack[])
void l_apic_timer_interrupt(int n, void *stack)
{
l_apic_eoi();
clock();