MentOS
0.8.0
The Mentoring Operating System
|
Data structures and functions required to manage the PIC8259. More...
Go to the source code of this file.
Macros | |
#define | IRQ_NUM 16 |
The total number of IRQs. | |
#define | IRQ_TIMER 0 |
System timer. | |
#define | IRQ_KEYBOARD 1 |
Keyboard controller. | |
#define | IRQ_TO_SLAVE_PIC 2 |
cascaded signals from IRQs 8–15 (any devices configured to use IRQ 2 will actually be using IRQ 9) | |
#define | IRQ_COM2_4 3 |
Serial port controller for serial port 2 (and 4). | |
#define | IRQ_COM1_3 4 |
Serial port controller for serial port 1 (and 3). | |
#define | IRQ_LPT2 5 |
Parallel port 2 and 3 (or sound card). | |
#define | IRQ_FLOPPY 6 |
Floppy disk controller. | |
#define | IRQ_LPT1 7 |
Parallel port 1. | |
#define | IRQ_REAL_TIME_CLOCK 8 |
Real-time clock (RTC). | |
#define | IRQ_AVAILABLE_1 9 |
Advanced Configuration and Power Interface (ACPI) system control interrupt on Intel chipsets.[1] Other chipset manufacturers might use another interrupt for this purpose, or make it available for the use of peripherals (any devices configured to use IRQ 2 will actually be using IRQ 9) | |
#define | IRQ_AVAILABLE_2 10 |
The Interrupt is left open for the use of peripherals (open interrupt/available, SCSI or NIC). | |
#define | IRQ_AVAILABLE_3 11 |
The Interrupt is left open for the use of peripherals (open interrupt/available, SCSI or NIC). | |
#define | IRQ_MOUSE 12 |
Mouse on PS/2 connector. | |
#define | IRQ_MATH_CPU 13 |
CPU co-processor or integrated floating point unit or inter-processor interrupt (use depends on OS). | |
#define | IRQ_FIRST_HD 14 |
Primary ATA channel (ATA interface usually serves hard disk drives and CD drives). | |
#define | IRQ_SECOND_HD 15 |
Secondary ATA channel. | |
Functions | |
void | pic8259_init_irq (void) |
Function that initializes the processor pic 8259 that will manage the interruptions. | |
int | pic8259_irq_enable (uint32_t irq) |
This function, enable irqs on the pic. More... | |
int | pic8259_irq_disable (uint32_t irq) |
This function, disable irqs on the pic. More... | |
void | pic8259_send_eoi (uint32_t irq) |
This is issued to the PIC chips at the end of an IRQ-based interrupt routine. More... | |
Data structures and functions required to manage the PIC8259.
The Intel 8259 is a Programmable Interrupt Controller (PIC) designed for the Intel 8085 and Intel 8086 microprocessors.
int pic8259_irq_disable | ( | uint32_t | irq | ) |
This function, disable irqs on the pic.
This function provide a tool for enabling irq from the pic processor.
irq | Number of irq to enable. |
int pic8259_irq_enable | ( | uint32_t | irq | ) |
This function, enable irqs on the pic.
This function provide a tool for enabling irq from the pic processor.
irq | Number of irq to enable. |
void pic8259_send_eoi | ( | uint32_t | irq | ) |
This is issued to the PIC chips at the end of an IRQ-based interrupt routine.
irq | The interrupt number. |