Date: Fri, 17 Jan 1997 21:35:11 +0100 From: se@freebsd.org (Stefan Esser) To: ken@housing1.stucen.gatech.edu (Kenneth Merry) Cc: smp@csn.net (Steve Passe), matt@lkg.dec.com, kmitch@weenix.guru.org, smp@freebsd.org Subject: Re: Adaptec 3940UW and SMP Message-ID: <Mutt.19970117213511.se@x14.mi.uni-koeln.de> In-Reply-To: <199701160610.BAA09539@housing1.stucen.gatech.edu>; from Kenneth Merry on Jan 16, 1997 01:10:49 -0500 References: <199701160321.UAA07607@clem.systemsix.com> <199701160610.BAA09539@housing1.stucen.gatech.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jan 16, ken@housing1.stucen.gatech.edu (Kenneth Merry) wrote: > Well, I'm not entirely sure why the SMC card was hanging the system, > but I do think it had a whole lot to do with the fact that ahc1 (the second > channel on the 3940UW) was using the *same* interrupt as the SMC card. As Interrupt sharing must be supported for PCI cards, and it does in the non-SMP case ... > Arlie Davis pointed out, the 3940 cards seem to steal an interrupt from the > next PCI slot down. In my case, the SMC card, when it was in, was in the > next PCI slot down from the 3940UW. This is one common scheme: INTB of slot 2 is connected to INTA of slot 1, INTC of 2 to INTB of 1 and so on ... This distributes the interrupt lines of a multi-function card (or a card with a PPB) over the range of interrupt lines assigned to (upto) three neighbour cards' INTA ... > Well, once I realized the 3940 was grabbing an interrupt, I tried > what Arlie suggested, and cleared a slot next to the 3940. I now have the > following setup: > > Slot 1: Matrox Millenium (IRQ 11) > Slot 2: Adaptec 3940UW (IRQ 10) > Slot 3: Empty (IRQ 9) > Slot 4: SMC 10/100 card (IRQ 15) > Slot 5: Empty (shares IRQ w/ slot 4) > > Well, *now* the APIC_IO/SMP_INVLTLB kernel works. I can boot up, > turn on both processors, etc., no problem. ahc1 now steals IRQ 9 from slot > 3, but since there's nothing there, there are no conflicts. I hard-coded > all of these interrupts to the slots in the BIOS. Hmmm, there shouldn't be any conflicts! But I did not check, whether shared interrupts do really work in the SMP case. There might be some range check preventing IRQs > 15 from being shared, for example, or other assumptions that fail ... > The bad thing, though, is that with this setup, it means I won't be > able to put anything in slot 3. And if I put anything in slot 5, it'll > have to be able to share an interrupt with the SMC card. Please allow for some time (a few days) to have me check this. > de0 <Digital 21140 Fast Ethernet> rev 18 int a irq 19 on pci0:9 > Freeing (NOT implimented) irq 12 for ISA cards. > chip3 <DEC 21050 PCI-PCI bridge> rev 2 on pci0:11 > Freeing (NOT implimented) irq 12 for ISA cards. > vga0 <VGA-compatible display device> rev 1 int a irq 16 on pci0:12 > Freeing (NOT implimented) irq 11 for ISA cards. > ahc0 <Adaptec 3940 Ultra SCSI host adapter> rev 0 int a irq 17 on pci1:4 > Freeing (NOT implimented) irq 10 for ISA cards. > ahc1 <Adaptec 3940 Ultra SCSI host adapter> rev 0 int a irq 18 on pci1:5 > Freeing (NOT implimented) irq 9 for ISA cards. Hmmm, I seem to remember an implied 16 IRQ limit in the PCI code. This should be easy to fix, though ... Let me see: Please try again, with PCI_MAX_IRQ increased to 24 (see /sys/pci/pci.c). I don't have the time to verify, that this indeed the correct fix, but it may give a hint ... Regards, STefan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Mutt.19970117213511.se>