[coreboot] NIC working, IP assigned but not connected.

Myles Watson mylesgw at gmail.com
Tue Jan 19 17:26:38 CET 2010


> Never mind! I solved it. I got the wrong IRQ assign to the NIC but thats
> because...
> 
> smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW,
> m->bus_8132_2, (3<<2)|0, m->apicid_8132_2,0x0);
> 
> when I assign a 0x0 in that line I actually get irq 31 assign to the
> NIC. So I guess there is some sort of conversation to do here because
> what I need is IRQ 5 for the NIC not 31 (even if 31 seems to work fine).

My understanding is that smp_write_intsrc() uses relative offsets from the
APIC.  So to get the interrupt number, you add the number of interrupts from
each APIC up to m->apicid_8132_2, + 0.

There's probably a better explanation on the list somewhere, but I couldn't
find it right now.  Hopefully it's enough to get you started.

Thanks,
Myles





More information about the coreboot mailing list