Lines Matching +full:pc +full:- +full:ack
1 // SPDX-License-Identifier: GPL-2.0
30 * present in the majority of PC/AT boxes.
50 * Not all IRQs can be routed through the IO-APIC, eg. on certain (older)
51 * boards the timer interrupt is not really connected to any IO-APIC pin,
54 * Any '1' bit in this mask means the IRQ is routed through the IO-APIC.
76 mask_8259A_irq(data->irq); in disable_8259A_irq()
95 unmask_8259A_irq(data->irq); in enable_8259A_irq()
155 unsigned int irq = data->irq; in mask_and_ack_8259A()
162 * to overdo spurious IRQ handling - it's usually a sign in mask_and_ack_8259A()
167 * usually resulting from the 8259A-1|2 PICs) occur in mask_and_ack_8259A()
181 inb(PIC_SLAVE_IMR); /* DUMMY - (do we need this?) */ in mask_and_ack_8259A()
185 /* 'Specific EOI' to master-IRQ2 */ in mask_and_ack_8259A()
188 inb(PIC_MASTER_IMR); /* DUMMY - (do we need this?) */ in mask_and_ack_8259A()
197 * this is the slow path - should happen rarely. in mask_and_ack_8259A()
202 * 8259A - not spurious, go handle it. in mask_and_ack_8259A()
210 * lets ACK and report it. [once per IRQ] in mask_and_ack_8259A()
228 .name = "XT-PIC",
268 outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */ in i8259A_shutdown()
269 outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-2 */ in i8259A_shutdown()
284 outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */ in mask_8259A()
285 outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-2 */ in mask_8259A()
317 * there and let legacy_pic->init() initialize it for nothing. in probe_8259A()
333 outb(0xff, PIC_SLAVE_IMR); /* mask all of 8259A-2 */ in probe_8259A()
353 outb(0xff, PIC_MASTER_IMR); /* mask all of 8259A-1 */ in init_8259A()
356 * outb_pic - this has to work on a wide range of PC hardware. in init_8259A()
358 outb_pic(0x11, PIC_MASTER_CMD); /* ICW1: select 8259A-1 init */ in init_8259A()
360 /* ICW2: 8259A-1 IR0-7 mapped to ISA_IRQ_VECTOR(0) */ in init_8259A()
363 /* 8259A-1 (the master) has a slave on IR2 */ in init_8259A()
371 outb_pic(0x11, PIC_SLAVE_CMD); /* ICW1: select 8259A-2 init */ in init_8259A()
373 /* ICW2: 8259A-2 IR0-7 mapped to ISA_IRQ_VECTOR(8) */ in init_8259A()
375 /* 8259A-2 is a slave on master's IR2 */ in init_8259A()
399 * is to make x86 binary compatible among pc compatible and non-pc compatible