acpi: calibrate local APIC timer on BSP
This commit is contained in:
@@ -62,4 +62,30 @@ void io_apic::map_irq(unsigned int src, unsigned int dest)
|
||||
|
||||
write_irq(src, irq);
|
||||
}
|
||||
|
||||
void io_apic::mask_irq(unsigned int vec)
|
||||
{
|
||||
irq_entry irq;
|
||||
if (read_irq(vec, irq) != KERN_OK) {
|
||||
return;
|
||||
}
|
||||
|
||||
irq.irq_mask = 1;
|
||||
write_irq(vec, irq);
|
||||
}
|
||||
|
||||
void io_apic::unmask_irq(unsigned int vec, unsigned int dest_cpu)
|
||||
{
|
||||
irq_entry irq;
|
||||
if (read_irq(vec, irq) != KERN_OK) {
|
||||
return;
|
||||
}
|
||||
|
||||
irq.irq_mask = 0;
|
||||
if (dest_cpu != (unsigned int)-1) {
|
||||
irq.irq_dest = dest_cpu;
|
||||
}
|
||||
|
||||
write_irq(vec, irq);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user