Ignore:
Timestamp:
2019-06-09T11:31:38Z (5 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c48de91
Parents:
b401b33
Message:

Introduce PIC operations indirection mechanism

Some architectures switch from one interrupt controller implementation
to another during runtime. By providing a cleaner indirection mechanism,
it is possible e.g. for the ia32 IRQ 7 handler to distinguish i8259
spurious interrupts from actual IRQ 7 device interrupts, even when the
i8259 interrupt controller is no longer active.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia32/include/arch/interrupt.h

    rb401b33 r2a103b5  
    8888#define VECTOR_DEBUG_IPI          (IVT_FREEBASE + 2)
    8989
    90 extern void (*disable_irqs_function)(uint16_t);
    91 extern void (*enable_irqs_function)(uint16_t);
    92 extern void (*eoi_function)(unsigned int);
    93 extern const char *irqs_info;
    94 
    9590extern void interrupt_init(void);
    96 extern void trap_virtual_enable_irqs(uint16_t);
    97 extern void trap_virtual_disable_irqs(uint16_t);
    9891
    9992#endif
Note: See TracChangeset for help on using the changeset viewer.