From owner-freebsd-mobile Tue Jun 6 13:52:14 2000 Delivered-To: freebsd-mobile@freebsd.org Received: from palrel3.hp.com (palrel3.hp.com [156.153.255.226]) by hub.freebsd.org (Postfix) with ESMTP id 2955E37B9D8 for ; Tue, 6 Jun 2000 13:52:07 -0700 (PDT) (envelope-from darrylo@sr.hp.com) Received: from mina.sr.hp.com (mina.sr.hp.com [15.4.42.247]) by palrel3.hp.com (Postfix) with ESMTP id 3CBD9465; Tue, 6 Jun 2000 13:52:06 -0700 (PDT) Received: from localhost (darrylo@localhost [127.0.0.1]) by mina.sr.hp.com (8.9.3 (PHNE_18979)/8.9.3 SMKit7.0) with ESMTP id NAA28233; Tue, 6 Jun 2000 13:52:05 -0700 (PDT) Message-Id: <200006062052.NAA28233@mina.sr.hp.com> To: Ed DeHart , freebsd-mobile@freebsd.org Subject: Re: WaveLAN almost working with PCI adapter Reply-To: Darryl Okahata In-reply-to: Your message of "Tue, 06 Jun 2000 09:20:36 PDT." <200006061620.JAA26413@mina.sr.hp.com> Mime-Version: 1.0 (generated by tm-edit 1.5) Content-Type: text/plain; charset=US-ASCII Date: Tue, 06 Jun 2000 13:51:56 PDT From: Darryl Okahata Sender: owner-freebsd-mobile@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I wrote: > > pcic0: at port 0x3e0 iomem 0xd0000 irq 10 on isa0 > > pcic0: management irq 11 > > You've got an IRQ conflict. Both of these IRQs must match. Try > changing the kernel config to have pcic0 use IRQ 11 instead of 10. This > might work. I need my head examined. You've got too many devices in the system, and too many IRQs being shared (some/many FreeBSD drivers don't like shared IRQs). Upon closer examination, we see: pci1: at 0.0 irq 11 pci0: at 2.0 irq 9 xl0: <3Com 3c905B-TX Fast Etherlink XL> port 0xd800-0xd87f mem 0xdd800000-0xdd80007f irq 12 at device 9.0 on pci0 pcic-pci0: irq 5 at device 10.0 on pci0 pcic-pci1: irq 5 at device 10.1 on pci0 xl1: <3Com 3c905B-TX Fast Etherlink XL> port 0xd400-0xd47f mem 0xdd000000-0xdd00007f irq 10 at device 11.0 on pci0 atapci0: port 0xd000-0xd00f irq 0 at device 15.0 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 fdc0: at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 atkbd0: irq 1 on atkbdc0 pcic0: at port 0x3e0 iomem 0xd0000 irq 10 on isa0 pcic0: management irq 11 sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio1 at port 0x2f8-0x2ff irq 3 on isa0 ppc0: at port 0x378-0x37f irq 7 on isa0 wi0: at port 0x240-0x27f irq 13 slot 0 on pccard0 In particular, note: * IRQ 10 is used by xl1 and pcic0. The fact that xl1 is using IRQ 10 is causing FreeBSD to use IRQ 11 for the management IRQ, which won't work. FreeBSD should really output an error for this case, but doesn't. * IRQ 11 is used by both pci1 and pcic0. * pcic0 needs to use the same IRQ for everything (the VLSI 82C146 IRQ and management IRQ need to match), *IF* an IRQ is used. Unfortunately, I don't know of a good solution (my earlier suggestion to change pcic0 to use IRQ 11 may not work). The basic problem appears to be the shared IRQs, caused by having too many devices in the system. Other things to try: 1. Use pcic0 in polling mode. This is not as efficient, but does not require an IRQ. 2. Disable a serial port if you're not using it. 3. Disable the USB port if you're not using it. -- Darryl Okahata darrylo@soco.agilent.com DISCLAIMER: this message is the author's personal opinion and does not constitute the support, opinion, or policy of Agilent Technologies, or of the little green men that have been following him all day. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-mobile" in the body of the message