Changeset View
Changeset View
Standalone View
Standalone View
head/sys/x86/x86/io_apic.c
Show First 20 Lines • Show All 145 Lines • ▼ Show 20 Lines | |||||
static void | static void | ||||
_ioapic_eoi_source(struct intsrc *isrc, int locked) | _ioapic_eoi_source(struct intsrc *isrc, int locked) | ||||
{ | { | ||||
struct ioapic_intsrc *src; | struct ioapic_intsrc *src; | ||||
struct ioapic *io; | struct ioapic *io; | ||||
volatile uint32_t *apic_eoi; | volatile uint32_t *apic_eoi; | ||||
uint32_t low1; | uint32_t low1; | ||||
lapic_eoi(); | src = (struct ioapic_intsrc *)isrc; | ||||
lapic_eoi(src->io_vector); | |||||
if (!lapic_eoi_suppression) | if (!lapic_eoi_suppression) | ||||
return; | return; | ||||
src = (struct ioapic_intsrc *)isrc; | |||||
if (src->io_edgetrigger) | if (src->io_edgetrigger) | ||||
return; | return; | ||||
io = (struct ioapic *)isrc->is_pic; | io = (struct ioapic *)isrc->is_pic; | ||||
/* | /* | ||||
* Handle targeted EOI for level-triggered pins, if broadcast | * Handle targeted EOI for level-triggered pins, if broadcast | ||||
* EOI suppression is supported by LAPICs. | * EOI suppression is supported by LAPICs. | ||||
*/ | */ | ||||
▲ Show 20 Lines • Show All 973 Lines • Show Last 20 Lines |