Date: Fri, 9 Feb 2001 13:14:53 +0100 From: Bernd Walter <ticso@cicely5.cicely.de> To: Peter Jeremy <peter.jeremy@alcatel.com.au> Cc: freebsd-alpha@FreeBSD.ORG Subject: Re: Nonsense IRQs in -current Message-ID: <20010209131453.A82704@cicely5.cicely.de> In-Reply-To: <20010209215917.A7855@gsmx07.alcatel.com.au>; from peter.jeremy@alcatel.com.au on Fri, Feb 09, 2001 at 09:59:17PM %2B1100 References: <20010209103917.B90937@gsmx07.alcatel.com.au> <20010209215917.A7855@gsmx07.alcatel.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Feb 09, 2001 at 09:59:17PM +1100, Peter Jeremy wrote: > On 2001-Feb-09 10:39:18 +1100, Peter Jeremy <peter.jeremy@alcatel.com.au> wrote: > >I've just upgraded a Multia from -stable to -current and the PCI > >interrupts no longer make sense. dmesg shows: > > After much poking around in the kernel... > > In -stable, the Alpha interrupts are re-arranged in pci_read_device() > immediately after the config registers are read. > > In -current, a new route_interrupt() method has been created. This > method should be invoked via the alloc_resource() method for interrupt > requests. > > In my Multia, pci_read_device() (invoked from from pci_add_children()) > is reading initialised (!= 255) but incorrect intline values from the > PCI device configuration registers. When the device attach() method > invokes pci_alloc_resource(), intline!=255 so the PCIB_ROUTE_INTERRUPT() > call is skipped - leaving an invalid IRQ value. In particular, > dec_axppci_33_intr_route() is never called at all. > > I'm not sure what the correct fix is. I kludged it by just deleting > the check for intline!=255 in pci_alloc_resource() - but that is a > hack that just happens to work for me. I'm not sure whether this > is a bug in the SRM, AXPpci/33 or LCA - which makes it difficult to > work out where to fix it. On my rather old -current AXPpci33 everthing looks ok. If the problem also applies to AXPpci33 it will probably mean that the reason was introduced later. FreeBSD 5.0-CURRENT #6: Sun Nov 26 20:24:29 CET 2000 ticso@cicely9.cicely.de:/var/d8/src-2000-11-20/src/sys/compile/CICELY10 DEC AXPpci Alpha PC AXPpci33, 166MHz 8192 byte page size, 1 processor. CPU: LCA Family major=4 minor=2 OSF PAL rev: 0x100090002012d real memory = 31481856 (30744K bytes) avail memory = 24813568 (24232K bytes) Preloaded elf kernel "kernel.ko" at 0xfffffc0000650000. lca0: <21066 Core Logic chipset> pci0: <PCI bus> on pcib0 sym0: <810> port 0x10000-0x100ff mem 0x81040400-0x810404ff irq 11 at device 6.0 on pci0 sym0: No NVRAM, ID 7, Fast-10, SE, parity checking sym0: interrupting at ISA irq 11 isab0: <Intel 82378ZB PCI to ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 dc0: <Intel 21143 10/100BaseTX> port 0x10180-0x101ff mem 0x81040000-0x810403ff irq 5 at device 11.0 on pci0 dc0: interrupting at ISA irq 5 dc0: Ethernet address: 00:00:cb:56:2e:2a miibus0: <MII bus> on dc0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto de0: <Digital 21040 Ethernet> port 0x10100-0x1017f mem 0x81040500-0x8104057f irq 9 at device 12.0 on pci0 de0: interrupting at ISA irq 9 de0: Cogent 21040 [10Mb/s] pass 2.3 de0: address 00:00:92:90:7f:26 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: interrupting at ISA irq 6 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 atkbd0: interrupting at ISA irq 1 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> on isa0 sc0: VGA <16 virtual consoles, flags=0x0> mcclock0: <MC146818A real time clock> at port 0x70-0x71 on isa0 sio0: configured irq 4 not in bitmap of probed irqs 0 sio0 at port 0x3f8-0x3ff irq 4 on isa0 sio0: type 16550A, console sio0: interrupting at ISA irq 4 sio1: reserved for low-level i/o [...] -- B.Walter COSMO-Project http://www.cosmo-project.de ticso@cicely.de Usergroup info@cosmo-project.de To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010209131453.A82704>