Date: Mon, 23 Aug 1999 16:47:35 -0400 From: "David E. Cross" <crossd@cs.rpi.edu> To: Doug Rabson <dfr@nlsystems.com> Cc: "David E. Cross" <crossd@cs.rpi.edu>, freebsd-current@freebsd.org, new-bus@freebsd.org, crossd@cs.rpi.edu Subject: Re: PCI interrupt routing in -Current/newbus Message-ID: <199908232047.QAA60761@cs.rpi.edu> In-Reply-To: Message from Doug Rabson <dfr@nlsystems.com> of "Mon, 23 Aug 1999 21:45:24 BST." <Pine.BSF.4.10.9908232144240.72739-100000@salmon.nlsystems.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> > How are PCI interrupts routed in CURRENT/NewBus? For example almost all of > > my PCI devices are mapped to IRQ11. I understand this is "normal" in the PCI > > world, but how does the interrupt dispatch routine decide which ints to > > route where? I recently put a panic() in a intr routine of mine just to > > see the call stack, but all it showed has Xintr11 (which upon grepping the > > source found no matches, but a nm /kernel did find it?!?. > > The bios informs the kernel what irq each device is mapped to and we build > a chain of interrupt handlers for each one. All the handlers registered > for a given irq are called when it fires. That is what I initially thought, but my PCI handler is only called when that PCI device gets and interrupt. I would expect with IRQ 11 being so frequently used in my system that my handler would be called much more often than that. It is also called with the appropriate softc structure (this being a dual function controller). If it was firing all the handlers I would expect function 0 to trigger first, it does not trigger at all when function 1 signals the int. -- David Cross | email: crossd@cs.rpi.edu Systems Administrator/Research Programmer | Web: http://www.cs.rpi.edu/~crossd Rensselaer Polytechnic Institute, | Ph: 518.276.2860 Department of Computer Science | Fax: 518.276.4033 I speak only for myself. | WinNT:Linux::Linux:FreeBSD To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-new-bus" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199908232047.QAA60761>