CSM will (unfortunately) need to use these.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
dprintf(DEBUG_ISR_hwpic2, "handle_hwpic2 irq=%x\n", get_pic2_isr());
eoi_pic2();
}
+
+u8 saved_pic_mask[2] = { ~PIC1_IRQ2, ~0 };
+
+void
+pic_save_mask(void)
+{
+ saved_pic_mask[0] = inb(PORT_PIC1_DATA);
+ saved_pic_mask[1] = inb(PORT_PIC2_DATA);
+}
+
+void
+pic_restore_mask(void)
+{
+ outb(saved_pic_mask[0], PORT_PIC1_DATA);
+ outb(saved_pic_mask[1], PORT_PIC2_DATA);
+}
void set_pics(u8 irq0, u8 irq8);
void pic_setup(void);
+void pic_save_mask(void);
+void pic_restore_mask(void);
#endif // pic.h