drivers/generic/ioapic: Drop enable_virtual_wire

All boards with DRIVERS_GENERIC_IOAPIC select it.

Presumably the related configuration of routing IRQ0 when
IOAPIC is enabled should be always done to provide i8259
legacy compatibility for payloads.

Change-Id: Ie87816271fa63bba892c8615aa5e72ee68f6ba93
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/55287
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
Kyösti Mälkki 2021-06-06 08:10:05 +03:00
parent f6611a2ea8
commit 6644d7c508
8 changed files with 3 additions and 17 deletions

View File

@ -35,7 +35,6 @@ void setup_ioapic(void *ioapic_base, u8 ioapic_id);
void clear_ioapic(void *ioapic_base); void clear_ioapic(void *ioapic_base);
void ioapic_set_boot_config(void *ioapic_base, bool irq_on_fsb); void ioapic_set_boot_config(void *ioapic_base, bool irq_on_fsb);
void setup_ioapic_helper(void *ioapic_base, u8 ioapic_id, bool enable_virtual_wire);
#endif #endif
#endif #endif

View File

@ -136,17 +136,9 @@ void ioapic_set_boot_config(void *ioapic_base, bool irq_on_fsb)
} }
} }
void setup_ioapic_helper(void *ioapic_base, u8 ioapic_id, bool enable_virtual_wire) void setup_ioapic(void *ioapic_base, u8 ioapic_id)
{ {
set_ioapic_id(ioapic_base, ioapic_id); set_ioapic_id(ioapic_base, ioapic_id);
clear_ioapic(ioapic_base); clear_ioapic(ioapic_base);
route_i8259_irq0(ioapic_base);
if (enable_virtual_wire)
route_i8259_irq0(ioapic_base);
}
void setup_ioapic(void *ioapic_base, u8 ioapic_id)
{
setup_ioapic_helper(ioapic_base, ioapic_id, true);
} }

View File

@ -6,7 +6,6 @@
typedef struct drivers_generic_ioapic_config { typedef struct drivers_generic_ioapic_config {
u32 version; u32 version;
u8 apicid; u8 apicid;
u8 enable_virtual_wire;
u8 have_isa_interrupts; u8 have_isa_interrupts;
void *base; void *base;
} ioapic_config_t; } ioapic_config_t;

View File

@ -13,7 +13,7 @@ static void ioapic_init(struct device *dev)
if (!dev->enabled || !config) if (!dev->enabled || !config)
return; return;
setup_ioapic_helper(config->base, config->apicid, config->enable_virtual_wire); setup_ioapic(config->base, config->apicid);
} }
static void ioapic_read_resources(struct device *dev) static void ioapic_read_resources(struct device *dev)

View File

@ -143,7 +143,6 @@ chip northbridge/intel/gm45
chip drivers/generic/ioapic chip drivers/generic/ioapic
register "have_isa_interrupts" = "1" register "have_isa_interrupts" = "1"
register "enable_virtual_wire" = "1"
register "base" = "(void *)0xfec00000" register "base" = "(void *)0xfec00000"
device ioapic 2 on end device ioapic 2 on end
end end

View File

@ -133,7 +133,6 @@ chip northbridge/intel/gm45
chip drivers/generic/ioapic chip drivers/generic/ioapic
register "have_isa_interrupts" = "1" register "have_isa_interrupts" = "1"
register "enable_virtual_wire" = "1"
register "base" = "(void *)0xfec00000" register "base" = "(void *)0xfec00000"
device ioapic 2 on end device ioapic 2 on end
end end

View File

@ -121,7 +121,6 @@ chip northbridge/intel/gm45
device pci 1f.0 on # LPC bridge device pci 1f.0 on # LPC bridge
chip drivers/generic/ioapic chip drivers/generic/ioapic
register "have_isa_interrupts" = "1" register "have_isa_interrupts" = "1"
register "enable_virtual_wire" = "1"
register "base" = "(void *)0xfec00000" register "base" = "(void *)0xfec00000"
device ioapic 2 on end device ioapic 2 on end
end end

View File

@ -107,7 +107,6 @@ chip northbridge/intel/sandybridge
chip drivers/generic/ioapic chip drivers/generic/ioapic
register "have_isa_interrupts" = "1" register "have_isa_interrupts" = "1"
register "enable_virtual_wire" = "1"
register "base" = "(void *)0xfec00000" register "base" = "(void *)0xfec00000"
device ioapic 4 on end device ioapic 4 on end
end end