x86: use not_pci bitmap #6

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Alexey Starikovskiy 2008-03-20 14:54:49 +03:00 committed by Ingo Molnar
parent 9c0076cb34
commit 643befed10

View File

@ -1091,39 +1091,22 @@ static int pin_2_irq(int idx, int apic, int pin)
if (mp_irqs[idx].mpc_dstirq != pin) if (mp_irqs[idx].mpc_dstirq != pin)
printk(KERN_ERR "broken BIOS or MPTABLE parser, ayiee!!\n"); printk(KERN_ERR "broken BIOS or MPTABLE parser, ayiee!!\n");
switch (mp_bus_id_to_type[bus]) if (test_bit(bus, mp_bus_not_pci))
{ irq = mp_irqs[idx].mpc_srcbusirq;
case MP_BUS_ISA: /* ISA pin */ else {
case MP_BUS_EISA: /*
case MP_BUS_MCA: * PCI IRQs are mapped in order
{ */
irq = mp_irqs[idx].mpc_srcbusirq; i = irq = 0;
break; while (i < apic)
} irq += nr_ioapic_registers[i++];
case MP_BUS_PCI: /* PCI pin */ irq += pin;
{
/*
* PCI IRQs are mapped in order
*/
i = irq = 0;
while (i < apic)
irq += nr_ioapic_registers[i++];
irq += pin;
/* /*
* For MPS mode, so far only needed by ES7000 platform * For MPS mode, so far only needed by ES7000 platform
*/ */
if (ioapic_renumber_irq) if (ioapic_renumber_irq)
irq = ioapic_renumber_irq(apic, irq); irq = ioapic_renumber_irq(apic, irq);
break;
}
default:
{
printk(KERN_ERR "unknown bus type %d.\n",bus);
irq = 0;
break;
}
} }
/* /*