staticvoid
rawhide_srm_device_interrupt(unsignedlong vector)
{ int irq;
irq = (vector - 0x800) >> 4;
/* * The RAWHIDE SRM console reports PCI interrupts with a vector * 0x80 *higher* than one might expect, as PCI IRQ 0 (ie bit 0) * shows up as IRQ 24, etc, etc. We adjust it down by 8 to have * it line up with the actual bit numbers from the REQ registers, * which is how we manage the interrupts/mask. Sigh... * * Also, PCI #1 interrupts are offset some more... :-(
*/
if (irq == 52) { /* SCSI on PCI1 is special. */
irq = 72;
}
/* Adjust by which hose it is from. */
irq -= ((irq + 16) >> 2) & 0x38;
handle_irq(irq);
}
staticvoid __init
rawhide_init_irq(void)
{ struct pci_controller *hose; long i;
mcpcia_init_hoses();
/* Clear them all; only hoses that exist will be non-zero. */ for (i = 0; i < MCPCIA_MAX_HOSES; i++) cached_irq_masks[i] = 0;
for (hose = hose_head; hose; hose = hose->next) { unsignedint h = hose->index; unsignedint mask = hose_irq_masks[h];
for (i = 16; i < 128; ++i) {
irq_set_chip_and_handler(i, &rawhide_irq_type,
handle_level_irq);
irq_set_status_flags(i, IRQ_LEVEL);
}
init_i8259a_irqs();
common_init_isa_dma();
}
/* * PCI Fixup configuration. * * Summary @ MCPCIA_PCI0_INT_REQ: * Bit Meaning * 0 Interrupt Line A from slot 2 PCI0 * 1 Interrupt Line B from slot 2 PCI0 * 2 Interrupt Line C from slot 2 PCI0 * 3 Interrupt Line D from slot 2 PCI0 * 4 Interrupt Line A from slot 3 PCI0 * 5 Interrupt Line B from slot 3 PCI0 * 6 Interrupt Line C from slot 3 PCI0 * 7 Interrupt Line D from slot 3 PCI0 * 8 Interrupt Line A from slot 4 PCI0 * 9 Interrupt Line B from slot 4 PCI0 * 10 Interrupt Line C from slot 4 PCI0 * 11 Interrupt Line D from slot 4 PCI0 * 12 Interrupt Line A from slot 5 PCI0 * 13 Interrupt Line B from slot 5 PCI0 * 14 Interrupt Line C from slot 5 PCI0 * 15 Interrupt Line D from slot 5 PCI0 * 16 EISA interrupt (PCI 0) or SCSI interrupt (PCI 1) * 17-23 NA * * IdSel * 1 EISA bridge (PCI bus 0 only) * 2 PCI option slot 2 * 3 PCI option slot 3 * 4 PCI option slot 4 * 5 PCI option slot 5 *
*/
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.