arch/x86: fix a wrong variable in ioapic_set_max_vectors()
The commit 04a40379b has a wrongly written variable, which sets an
IOAPIC register to a wrong value and makes the Linux kernel unable to
boot.
Tested on HP EliteBook 2760p, the kernel boots after this patch.
Change-Id: Ifda7bb61a431dbf9c2df2f738aa806dd6d8097b8
Signed-off-by: Iru Cai <mytbk920423@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/58558
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
diff --git a/src/arch/x86/ioapic.c b/src/arch/x86/ioapic.c
index d299e60..d65637c 100644
--- a/src/arch/x86/ioapic.c
+++ b/src/arch/x86/ioapic.c
@@ -59,7 +59,7 @@
count = mre_count - 1;
reg &= ~(0xff << 16);
reg |= count << 16;
- io_apic_write(ioapic_base, 0x01, count);
+ io_apic_write(ioapic_base, 0x01, reg);
}
void ioapic_lock_max_vectors(void *ioapic_base)