exception_t handleInterruptEntry(void) { irq_t irq; irq = getActiveIRQ(); #if defined(DEBUG) || defined(CONFIG_BENCHMARK_TRACK_KERNEL_ENTRIES) ksKernelEntry.path = Entry_Interrupt; ksKernelEntry.word = irq; #endif /* DEBUG */ #ifdef CONFIG_BENCHMARK_TRACK_KERNEL_ENTRIES benchmark_track_start(); #endif if (irq != irqInvalid) { handleInterrupt(irq); } else { #ifdef CONFIG_IRQ_REPORTING printf("Spurious interrupt\n"); #endif handleSpuriousIRQ(); } schedule(); activateThread(); #ifdef CONFIG_BENCHMARK_TRACK_KERNEL_ENTRIES benchmark_track_exit(); #endif return EXCEPTION_NONE; }
exception_t handleInterruptEntry(void) { irq_t irq; irq = getActiveIRQ(); if (irq != irqInvalid) { handleInterrupt(irq); } else { printf("Spurious interrupt\n"); handleSpuriousIRQ(); } schedule(); activateThread(); return EXCEPTION_NONE; }
exception_t handleInterruptEntry(void) { irq_t irq; //printf("==in handleInterruptEntry function===\n"); irq = getActiveIRQ(); if (irq != irqInvalid) { //printf("will call hanleInterrupt function\n"); handleInterrupt(irq); } else { //printf("Spurious interrupt\n"); handleSpuriousIRQ(); } //printf("will schedule\n"); schedule(); activateThread(); return EXCEPTION_NONE; }
exception_t handleInterruptEntry(void) { irq_t irq; irq = getActiveIRQ(); #ifdef DEBUG ksKernelEntry.path = Debug_Interrupt; ksKernelEntry.irq = irq; #endif /* DEBUG */ if (irq != irqInvalid) { handleInterrupt(irq); } else { #ifdef CONFIG_IRQ_REPORTING printf("Spurious interrupt\n"); #endif handleSpuriousIRQ(); } schedule(); activateThread(); return EXCEPTION_NONE; }