Date: Mon, 2 Apr 2001 17:41:45 -0400 (EDT) From: Andrew Gallatin <gallatin@cs.duke.edu> To: Bernd Walter <ticso@mail.cicely.de> Cc: freebsd-current@freebsd.org Subject: Re: Funny Interrupt settings on AXPpci33 (fwd) Message-ID: <15048.61977.954793.801365@grasshopper.cs.duke.edu> In-Reply-To: <Pine.LNX.4.21.0104021434370.3303-100000@zeppo.feral.com> References: <Pine.LNX.4.21.0104021434370.3303-100000@zeppo.feral.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Bernd, The problem is that the lca gives totally bogus intline values that aren't 255; so the MI code thinks they are valid & never calls the platform specific inter_route code to correct them. Please try the appended fix, which is basically what we do on x86 SMP. Matt Dodd said he had a better idea, but it doesn't look like he had time to implement it. Mike Smith suggested it, and if it works for you, I'll commit it. Drew ------------------------------------------------------------------------------ Andrew Gallatin, Sr Systems Programmer http://www.cs.duke.edu/~gallatin Duke University Email: gallatin@cs.duke.edu Department of Computer Science Phone: (919) 660-6590 Index: alpha/pci//lca_pci.c =================================================================== RCS file: /home/ncvs/src/sys/alpha/pci/lca_pci.c,v retrieving revision 1.9 diff -u -r1.9 lca_pci.c --- alpha/pci//lca_pci.c 2000/12/08 22:11:23 1.9 +++ alpha/pci//lca_pci.c 2001/03/16 21:38:02 @@ -34,6 +34,8 @@ #include <machine/bus.h> #include <sys/rman.h> #include <pci/pcivar.h> +#include <pci/pcireg.h> +#include <machine/cpuconf.h> #include <machine/swiz.h> #include <machine/md_var.h> @@ -134,6 +136,12 @@ lca_pcib_read_config(device_t dev, u_int b, u_int s, u_int f, u_int reg, int width) { + if ((reg == PCIR_INTLINE) && (width == 1)) { + int pin; + + pin = lca_pcib_read_config(dev, b, s, f, PCIR_INTPIN, 1); + return (platform.pci_intr_route(NULL, dev, pin)); + } switch (width) { case 1: CFGREAD(b, s, f, reg, BYTE, u_int8_t); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15048.61977.954793.801365>