linux-2.5.69: acpi & ioapic: only 16 interrupts instead of 24

From: Jurriaan (thunder7@xs4all.nl)
Date: Mon May 05 2003 - 08:13:40 EST


I have this problem where ACPI only recognizes 16 out of the 24
interrupts of my IOAPIC.

It's a VIA KT-400 chipset (Epox 8K9A3+), bios settings: ioapic on,
MPS-1.4. I'm using kernel 2.5.69 so my acpi-code is recent.

The relevant part of a dmesg of a acpi-2.5.69 boot:

ACPI: LAPIC_NMI (acpi_id[0x00] polarity[0x1] trigger[0x1] lint[0x1])
ACPI: IOAPIC (id[0x02] address[0xfec00000] global_irq_base[0x0])
IOAPIC[0]: Assigned apic_id 2
IOAPIC[0]: apic_id 2, version 3, address 0xfec00000, IRQ 0-23
Enabling APIC mode: Flat. Using 1 I/O APICs
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-16, 2-17, 2-18, 2-19, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=0x31 pin1=2 pin2=0
number of MP IRQ sources: 16.
number of IO-APIC #2 registers: 24.

Notice how it first says IRQ 0-23 for the APIC, then later claims that
there are 16 MP IRQ sources. Unfortunately, my on-board network card is
wired to one of the 8 lost irq's, and after booting my network is dead.

If I boot a non-acpi kernel, things look like this:

I/O APIC #2 Version 17 at 0xFEC00000.
Enabling APIC mode: Flat. Using 1 I/O APICs
ENABLING IO-APIC IRQs
Setting 2 in the phys_id_present_map
...changing IO-APIC physical APIC ID to 2 ... ok.
init IO_APIC IRQs
 IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-20 not connected.
..TIMER: vector=0x31 pin1=2 pin2=0
number of MP IRQ sources: 24.
number of IO-APIC #2 registers: 24.

Then, there are 24 irq sources, and my network works fine.

Booting an acpi-kernel with commandline-argument 'pci=noacpi' hangs the
kernel after this line in the dmesg:

ide1 at 0x170-0x177,0x376 on irq 15

/proc/interrupts with acpi on:

           CPU0
  0: 7451442 IO-APIC-edge timer
  1: 403 IO-APIC-edge i8042
  2: 0 XT-PIC cascade
  4: 8 IO-APIC-edge serial
  8: 4 IO-APIC-edge rtc
  9: 0 IO-APIC-edge acpi
 11: 0 IO-APIC-edge VIA8233
 12: 63 IO-APIC-edge i8042
 14: 9161 IO-APIC-edge ide0
 15: 1906 IO-APIC-edge ide1
 17: 1507 IO-APIC-level ide2, ide4
 18: 53 IO-APIC-level sym53c8xx
 19: 0 IO-APIC-level EMU10K1

and with acpi off:

           CPU0
  0: 465649 IO-APIC-edge timer
  1: 2511 IO-APIC-edge i8042
  2: 0 XT-PIC cascade
  4: 8 IO-APIC-edge serial
  8: 4 IO-APIC-edge rtc
 12: 63 IO-APIC-edge i8042
 14: 33566 IO-APIC-edge ide0
 15: 14231 IO-APIC-edge ide1
 17: 6509 IO-APIC-level ide2, ide4
 18: 43 IO-APIC-level sym53c8xx
 19: 0 IO-APIC-level EMU10K1
 22: 0 IO-APIC-level VIA8233
 23: 24486 IO-APIC-level eth0

I'll attach a full dmesg for the acpi-kernel.
Googling didn't find anything to solve this, other than a tantalizing
hint this started between 2.5.44 and 2.5.44-ac1.

Thanks for your attention,
Jurriaan



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed May 07 2003 - 22:00:21 EST