Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 May 2001 16:33:57 -0500
From:      Lars Fredriksen <lars@odin-corporation.com>
To:        Tor.Egge@fast.no
Cc:        smp@FreeBSD.ORG
Subject:   Re: Any reason why we don't use irqs above 15 on SMP systems?
Message-ID:  <3B0ADB45.180C9C6D@odin-corporation.com>
References:  <3B0034CA.D6692771@odin-corporation.com> <200105151531.RAA48069@midten.fast.no>

next in thread | previous in thread | raw e-mail | index | archive | help
Tor.Egge@fast.no wrote:

> > Hi,
> > A while back I seem to recall that if you ran on an SMP system, that you
> > would end up with essentially 32 irqs. That doesn't seem to happen any
> > more. This particular motherboard (Supermicro P6DNE) is configured with
> > PNP OS set to yes. That is the only way I can get this box up and
> > running. Otherwise, it  assigns every PCI board irq 11, and a that
> > point, no interupts are comming through.
>
> On -stable, it's 24 low level interrupt handlers.
>
> The binding of (APIC id, intpin) pairs to low level interrupt handler
> numbers is deferred for PCI devices until the probe routine asks for
> which interrupt the device uses.  The first free low level interrupt
> handler is then allocated for that (APIC id, intpin) pair.
>
> Multiple PCI devices described in the MP table as sharing the same
> (APIC id, intpin) pair will share the same low level interrupt
> handler.
>
> - Tor Egge

Hi Tor,

Part of my problem is that my PNP gus ISA sound card ends up on irq 11, which
also gets assigned to the video card (when pnp os = TRUE) or to all my
PCI cards (when PNP os = FALSE). I am assuming that it is my bios that is
building a poor or incorrect mptable. On this particular system, the
PCI devices never gets irqs above 15. I don't yet know if that is related to
:

Programming 24 pins in IOAPIC #0
IOAPIC #0 intpin 2 -> irq 0
IOAPIC #0 intpin 16 -> irq 7
IOAPIC #0 intpin 17 -> irq 5
IOAPIC #0 intpin 18 -> irq 9
IOAPIC #0 intpin 19 -> irq 11
IOAPIC #0 intpin 20 -> irq 15
APIC_IO: Testing 8254 interrupt delivery
APIC_IO: Broken MP table detected: 8254 is not connected to IOAPIC #0 intpin
2
APIC_IO: routing 8254 via 8259 and IOAPIC #0 intpin 0

I was thinking of taking intpin 18,19 and 20 and hard code them to irq 16,17,
and 18. I had a patch for this a couple of years ago that worked well, and
I might just have to figure out how to do the same again.

Thanks for the feedback,

Lars

Gratulere med vel overstått 17 mai.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B0ADB45.180C9C6D>