From owner-freebsd-new-bus Mon Aug 23 13:47:44 1999 Delivered-To: freebsd-new-bus@freebsd.org Received: from cs.rpi.edu (mumble.cs.rpi.edu [128.213.8.16]) by hub.freebsd.org (Postfix) with ESMTP id 1A0EA14DEF; Mon, 23 Aug 1999 13:47:40 -0700 (PDT) (envelope-from crossd@cs.rpi.edu) Received: from cs.rpi.edu (mumble.cs.rpi.edu [128.213.8.16]) by cs.rpi.edu (8.9.3/8.9.3) with ESMTP id QAA60761; Mon, 23 Aug 1999 16:47:35 -0400 (EDT) Message-Id: <199908232047.QAA60761@cs.rpi.edu> To: Doug Rabson Cc: "David E. Cross" , freebsd-current@freebsd.org, new-bus@freebsd.org, crossd@cs.rpi.edu Subject: Re: PCI interrupt routing in -Current/newbus In-Reply-To: Message from Doug Rabson of "Mon, 23 Aug 1999 21:45:24 BST." Date: Mon, 23 Aug 1999 16:47:35 -0400 From: "David E. Cross" Sender: owner-freebsd-new-bus@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > > 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