[coreboot] New patch to review for coreboot: 40435e4 Fix reading of number of interrupts for IO-APICs

Aladyshev Konstantin (kostr@list.ru) gerrit at coreboot.org
Tue Dec 18 19:35:19 CET 2012


Aladyshev Konstantin (kostr at list.ru) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/2043

-gerrit

commit 40435e4b72f92de68d976217124ae60813b92ffc
Author: Kostr <aladyshev at nicevt.ru>
Date:   Tue Dec 18 22:29:20 2012 +0400

    Fix reading of number of interrupts for IO-APICs
    
    Do change http://review.coreboot.org/#/c/1624/ for "clear_ioapic" function
    
    Change-Id: I7b730d016a514c95c3b32aee6f31bd3d7b2c08cb
    Signed-off-by: Kostr <aladyshev at nicevt.ru>
---
 src/arch/x86/lib/ioapic.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/arch/x86/lib/ioapic.c b/src/arch/x86/lib/ioapic.c
index 018a42c..e05d80c 100644
--- a/src/arch/x86/lib/ioapic.c
+++ b/src/arch/x86/lib/ioapic.c
@@ -43,8 +43,11 @@ void clear_ioapic(u32 ioapic_base)
 
 	/* Read the available number of interrupts. */
 	ioapic_interrupts = (io_apic_read(ioapic_base, 0x01) >> 16) & 0xff;
-	if (!ioapic_interrupts || ioapic_interrupts == 0xff)
-		ioapic_interrupts = 24;
+	if (ioapic_interrupts == 0xff)
+		ioapic_interrupts = 23;
+	ioapic_interrupts += 1; /* Bits 23-16 specify the maximum redirection
+				   entry, which is the number of interrupts
+				   minus 1. */
 	printk(BIOS_DEBUG, "IOAPIC: %d interrupts\n", ioapic_interrupts);
 
 	low = DISABLED;



More information about the coreboot mailing list