36 #define PIC1_CMD_PORT 0x20
37 #define PIC1_DATA_PORT 0x21
38 #define PIC2_CMD_PORT 0xA0
39 #define PIC2_DATA_PORT 0xA1
40 #define PIC1_OFFSET 0x20
41 #define PIC2_OFFSET PIC1_OFFSET + 8
47 #define PIC_INT(a) (a + PIC1_OFFSET)
49 void pic_unmask_irq(
unsigned int num);
59 outb(PIC1_CMD_PORT, 0x11);
60 outb(PIC2_CMD_PORT, 0x11);
63 outb(PIC1_DATA_PORT, PIC1_OFFSET);
64 outb(PIC2_DATA_PORT, PIC2_OFFSET);
67 outb(PIC1_DATA_PORT, 0x04);
68 outb(PIC2_DATA_PORT, 0x02);
71 outb(PIC1_DATA_PORT, 0x01);
72 outb(PIC2_DATA_PORT, 0x01);
76 outb(PIC1_DATA_PORT, 0xfb);
77 outb(PIC2_DATA_PORT, 0xff);
84 void pic_eoi(
unsigned int irq);