[coreboot] [PATCH]: Disable ExtINT in ioapic.c
marcj303 at gmail.com
Fri Mar 5 23:02:18 CET 2010
On Tue, Feb 2, 2010 at 6:40 PM, Stefan Reinauer <stepan at coresystems.de> wrote:
> On 2/2/10 4:25 AM, Bao, Zheng wrote:
>> Index: src/arch/i386/smp/ioapic.c
>> --- src/arch/i386/smp/ioapic.c (revision 5073)
>> +++ src/arch/i386/smp/ioapic.c (working copy)
>> @@ -110,7 +110,7 @@
>> /* Enable Virtual Wire Mode */
>> - low = ENABLED | TRIGGER_EDGE | POLARITY_HIGH | PHYSICAL_DEST |
>> + low = DISABLED;
>> high = bsp_lapicid << (56 - 32);
>> io_apic_write(ioapic_base, 0x10, low);
> Hm.. This will break quite some other boards...
> Is there any particular reason why the dbm690t will not work in virtual
> wire mode?
> I think either the sb600 code should call clear_ioapic() instead of
> setup_ioapic() or (maybe better) the setup_ioapic() function should get
> an additional parameter virtual_wire
> Anyways, maybe we should try to unify clear_ioapic and setup_ioapic
> (also, the function should create a device node and append it to the
> bridge it is called from)
You are right. The sb600 was really doing a clear_ioapic() previously.
I don't yet understand why the virtual wire mode causes problems. It
is either an additional sb600 setup issue or a mainboard problem with
how EXTINT is connected. The setup_ioapic() should probably have more
options as EXTINT doesn't have to be connected to the APIC.
Signed-off-by: Marc Jones <marcj303 at gmail.com>
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 834 bytes
Desc: not available
More information about the coreboot