From owner-freebsd-current Thu Jun 6 19:39:39 2002 Delivered-To: freebsd-current@freebsd.org Received: from rover.village.org (rover.bsdimp.com [204.144.255.66]) by hub.freebsd.org (Postfix) with ESMTP id 8E37F37B401; Thu, 6 Jun 2002 19:39:27 -0700 (PDT) Received: from harmony.village.org (harmony.village.org [10.0.0.6]) by rover.village.org (8.11.3/8.11.3) with ESMTP id g572dQY76141; Thu, 6 Jun 2002 20:39:26 -0600 (MDT) (envelope-from imp@village.org) Received: from localhost (warner@rover2.village.org [10.0.0.1]) by harmony.village.org (8.11.6/8.11.6) with ESMTP id g572dPG95678; Thu, 6 Jun 2002 20:39:25 -0600 (MDT) (envelope-from imp@village.org) Date: Thu, 06 Jun 2002 20:39:20 -0600 (MDT) Message-Id: <20020606.203920.128346019.imp@village.org> To: gallatin@cs.duke.edu Cc: des@ofug.org, alpha@freebsd.org, current@freebsd.org Subject: Re: alpha can't map interrupt From: "M. Warner Losh" In-Reply-To: <15616.3530.526275.555196@grasshopper.cs.duke.edu> References: <15616.3530.526275.555196@grasshopper.cs.duke.edu> X-Mailer: Mew version 2.1 on Emacs 21.1 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Please accept my appologies for this, it does look like I messed up the MI code. The following change may mess up the pcib code a little, but I think that the MD code now does the right thing. Does this fix things for you? Warner Index: pcivar.h =================================================================== RCS file: /cache/ncvs/src/sys/dev/pci/pcivar.h,v retrieving revision 1.56 diff -u -r1.56 pcivar.h --- pcivar.h 1 Jun 2002 05:40:33 -0000 1.56 +++ pcivar.h 7 Jun 2002 02:35:52 -0000 @@ -246,10 +246,12 @@ #undef PCIB_ACCESSOR /* - * PCI interrupt validation. + * PCI interrupt validation. Invalid interrupt values such as 0 or 128 + * on i386 or other platforms should be mapped out in the MD pcireadconf + * code and not here, since the only MI invalid IRQ is 255. */ #define PCI_INVALID_IRQ 255 -#define PCI_INTERRUPT_VALID(x) (((x) != 0) && ((x) != PCI_INVALID_IRQ)) +#define PCI_INTERRUPT_VALID(x) ((x) != PCI_INVALID_IRQ) /* * Convenience functions. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message