Changeset View
Changeset View
Standalone View
Standalone View
sys/x86/x86/intr_machdep.c
Show First 20 Lines • Show All 390 Lines • ▼ Show 20 Lines | intr_suspend(void) | ||||
mtx_lock(&intrpic_lock); | mtx_lock(&intrpic_lock); | ||||
TAILQ_FOREACH_REVERSE(pic, &pics, pics_head, pics) { | TAILQ_FOREACH_REVERSE(pic, &pics, pics_head, pics) { | ||||
if (pic->pic_suspend != NULL) | if (pic->pic_suspend != NULL) | ||||
pic->pic_suspend(pic); | pic->pic_suspend(pic); | ||||
} | } | ||||
mtx_unlock(&intrpic_lock); | mtx_unlock(&intrpic_lock); | ||||
} | } | ||||
/* | |||||
* This should not be called while pics are being removed, or while | |||||
* interrupt_sources is changing. | |||||
*/ | |||||
void | |||||
intr_enable_src(u_int irq) | |||||
{ | |||||
struct intsrc *is; | |||||
is = interrupt_sources[irq]; | |||||
is->is_pic->pic_enable_source(is); | |||||
} | |||||
static int | static int | ||||
intr_assign_cpu(void *arg, int cpu) | intr_assign_cpu(void *arg, int cpu) | ||||
{ | { | ||||
#ifdef SMP | #ifdef SMP | ||||
struct intsrc *isrc; | struct intsrc *isrc; | ||||
int error; | int error; | ||||
#ifdef EARLY_AP_STARTUP | #ifdef EARLY_AP_STARTUP | ||||
▲ Show 20 Lines • Show All 442 Lines • Show Last 20 Lines |