IRQ_SLAVE
irqs |= 1 << IRQ_SLAVE;
OCW2_SELECT | OCW2_EOI | OCW2_SL | IRQ_SLAVE);
isa_outb(IO_ICU1 + PIC_ICW3, ICW3_CASCADE(IRQ_SLAVE));
isa_outb(IO_ICU2 + PIC_ICW3, ICW3_SIC(IRQ_SLAVE));
outb(IO_ICU1+1, 1 << IRQ_SLAVE); /* slave on line 2 */
outb(IO_ICU2+1, IRQ_SLAVE);
irqs |= 1 << IRQ_SLAVE;
nmask |= 1 << IRQ_SLAVE;
vector = IRQ_SLAVE;
vector = IRQ_SLAVE;
icu[1] = (1 << IRQ_SLAVE); /* slave on line 2 */
icu[1] = IRQ_SLAVE; /* slave on line 2 */
#define LEGAL_HWIRQ_P(x) ((u_int)(x) < ICU_LEN && (x) != IRQ_SLAVE)
ICU1_WRITE(PIC_ICW3, ICW3_CASCADE(IRQ_SLAVE));
ICU2_WRITE(PIC_ICW3, ICW3_SIC(IRQ_SLAVE));
if (irq >= NICU_INT || irq == IRQ_SLAVE || type == IST_NONE)
icu_imask &= ~(1U << IRQ_SLAVE);
icu_imask |= (1U << IRQ_SLAVE);
if (irq == IRQ_SLAVE) {
irq = IRQ_SLAVE;
#define LEGAL_HWIRQ_P(x) ((u_int)(x) < ICU_LEN && (x) != IRQ_SLAVE)
#define LEGAL_HWIRQ_P(x) ((u_int)(x) < ICU_LEN && (x) != IRQ_SLAVE)
#ifdef IRQ_SLAVE
|| ih == IRQ_SLAVE
#ifdef IRQ_SLAVE
|| ih == IRQ_SLAVE
if (irq == IRQ_SLAVE) {
isa_outb(IO_ICU1+1, 1 << IRQ_SLAVE); /* slave on line 2 */
isa_outb(IO_ICU2+1, IRQ_SLAVE);
i8259->irqs |= 1 << IRQ_SLAVE;
isa_outb(IO_ICU1, 0xe0 | IRQ_SLAVE);
#define LEGAL_HWIRQ_P(x) ((u_int)(x) < ICU_LEN && (x) != IRQ_SLAVE)
if (line == IRQ_SLAVE) {
outb(IO_ICU1+1, 1 << IRQ_SLAVE); /* slave on line 2 */
outb(IO_ICU2+1, IRQ_SLAVE); /* who ami i? */
movb $(0x60|IRQ_SLAVE),%al /* specific EOI for IRQ2 */ ;\
movb $(0x60|IRQ_SLAVE),%al /* specific EOI for IRQ2 */ ;\
outb(IO_ICU1 + PIC_ICW3, ICW3_CASCADE(IRQ_SLAVE));
outb(IO_ICU2 + PIC_ICW3, ICW3_SIC(IRQ_SLAVE));
irqs |= 1 << IRQ_SLAVE;