Lines Matching full:pic
29 * PIC driver for the 8259A Master and Slave PICs in PC/AT machines.
124 struct pic at_pic;
134 int at_irq; /* Relative to PIC base. */
140 static void atpic_register_sources(struct pic *pic);
148 static void atpic_resume(struct pic *pic, bool suspend_cancelled);
153 static void i8259_init(struct atpic *pic, int slave);
186 ("%s: mismatched pic", __func__));
201 ("%s: mismatched pic", __func__));
211 atpic_register_sources(struct pic *pic)
213 struct atpic *ap = (struct atpic *)pic;
336 atpic_resume(struct pic *pic, bool suspend_cancelled)
338 struct atpic *ap = (struct atpic *)pic;
413 i8259_init(struct atpic *pic, int slave)
417 /* Reset the PIC and program with next four bytes. */
419 outb(pic->at_ioaddr, ICW1_RESET | ICW1_IC4);
420 imr_addr = pic->at_ioaddr + ICU_IMR_OFFSET;
423 outb(imr_addr, pic->at_intbase);
426 * Setup slave links. For the master pic, indicate what line
442 outb(imr_addr, pic->at_imen);
445 outb(pic->at_ioaddr, OCW3_SEL | OCW3_RR);
449 outb(pic->at_ioaddr, OCW2_R | OCW2_SL | OCW2_L1);
561 * Bus attachment for the ISA PIC.
581 * between the two PIC components. If we're using the APIC, however,