rk/include/kernel/pic8259.h

31 lines
520 B
C
Raw Permalink Normal View History

#ifndef RK_PIC8259_H
#define RK_PIC8259_H
2024-05-21 22:07:04 -04:00
#define PIC_1_COMMAND 0x20
#define PIC_2_COMMAND 0xA0
#define PIC_1_DATA 0x21
#define PIC_2_DATA 0xA1
#define PIC_EOI 0x20
#define PIC_1_START 32
#define PIC_2_START 40
#define PIC_1_ICW3 0x04
#define PIC_2_ICW3 0x02
2024-05-26 02:33:18 -04:00
#include <kernel/io.h>
2024-05-21 22:07:04 -04:00
enum ICW1 {
ICW4_NEEDED = 0x01,
SINGLE_MODE = 0x02,
INTERVAL_4 = 0x04,
LVL_TRIGGER = 0x08,
INIT_BIT = 0x10,
};
void pic_send_eoi(uint8_t irq);
void pic_remap(int pic1_start, int pic2_start);
#endif