From owner-freebsd-smp Fri Sep 28 7:22:57 2001 Delivered-To: freebsd-smp@freebsd.org Received: from digitaldaemon.com (digitaldaemon.com [63.105.9.34]) by hub.freebsd.org (Postfix) with SMTP id 291CA37B414 for ; Fri, 28 Sep 2001 07:22:48 -0700 (PDT) Received: (qmail 63907 invoked from network); 28 Sep 2001 14:21:40 -0000 Received: from 213-84-202-101.adsl.xs4all.nl (HELO jak.nl) (213.84.202.101) by jak.nl with SMTP; 28 Sep 2001 14:21:40 -0000 Message-ID: <3BB487F5.3070602@jak.nl> Date: Fri, 28 Sep 2001 16:23:49 +0200 From: Arjan Knepper Organization: JAK++ Software Development B.V. User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.2) Gecko/20010726 Netscape6/6.1 X-Accept-Language: en-us MIME-Version: 1.0 To: Bruce Evans Cc: freebsd-smp Subject: Re: Problems with accessing ports on multiple Cyclades YeP cards References: <20010928222423.J53717-100000@delplex.bde.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org Bruce Evans wrote: >On Fri, 28 Sep 2001, Arjan Knepper wrote: > >>Bruce Evans wrote: >> >>>I always configure CY_PCI_FASTINTR and shuffle boards in the PCI slots >>>to make the YeP interrupt non-shared. >>> >>The interups are not shared between the board but shared with the NIC >>and SCSI interface (both integrated on motherboard) >>For me there not much to shuffle since there are only 3 PCI slots in the >>the machine and all are supossed to have an YeP card. >> >>> This is easier with only 1 YeP >>>board, but it still required lots of shuffling on a BP6 motherboard. >>>(The BP6 needs an extra irq or two for the second ata controller >>>(HPTsomething), and its BIOS doesn't support adjusting these like it >>>does for the PCI slots, and the YeP irq ended up shared with an HPT >>>irq in most configurations; this just prevented CY_PCI_FASTINTR from >>>helping under FreeBSD, but it caused the boot to hang under Linux.) >>> >>Are you saying that the YeP interups shouldn't be shared at all? Not >>with ANY pci device? >> > >Almost. Not with any active pci interrupt (it doesn't matter if they >are shared with unused VGA interrupts). This is just an optimization, >but it may expose different bugs. If CY_PCI_FASTINTR is configured and >a CY_PCI irq is shared, then the following behaviour is normal: >- if a CY_PCI device using a shared irq is configured before any other > device using the shared irq, then the CY_PCI device aquires the irq > exclusively and the other devices fail to attach. >- otherwise, one of the other devices aquires the irq non-exclusively > (except in the unusual case where it also uses fast interrupts), and > the CY_PCI device is attached using a non-fast irq. > >Let's see your dmesg output. > Below the output from an exactly the same machine with exactly the same config having the same problems only with FreeBSD 4.4RC-5 Copyright (c) 1992-2001 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 4.4-RC5 #0: Tue Sep 18 14:57:21 CEST 2001 apk@fax2.teledirekt.nl:/usr/src/sys/compile/DELL_PE_2550 Timecounter "i8254" frequency 1193182 Hz CPU: Pentium III/Pentium III Xeon/Celeron (930.96-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x68a Stepping = 10 Features=0x383fbff real memory = 536805376 (524224K bytes) config> q avail memory = 518877184 (506716K bytes) Changing APIC ID for IO APIC #0 from 0 to 2 on chip Changing APIC ID for IO APIC #1 from 0 to 3 on chip Programming 16 pins in IOAPIC #0 IOAPIC #0 intpin 2 -> irq 0 Programming 16 pins in IOAPIC #1 FreeBSD/SMP: Multiprocessor motherboard cpu0 (BSP): apic id: 1, version: 0x00040011, at 0xfee00000 cpu1 (AP): apic id: 0, version: 0x00040011, at 0xfee00000 io0 (APIC): apic id: 2, version: 0x000f0011, at 0xfec00000 io1 (APIC): apic id: 3, version: 0x000f0011, at 0xfec01000 Preloaded elf kernel "kernel" at 0xc035f000. Preloaded userconfig_script "/boot/kernel.conf" at 0xc035f09c. Pentium Pro MTRR support enabled md0: Malloc disk Using $PIR table, 8 entries at 0xc00fc270 npx0: on motherboard npx0: INT 16 interface pcib0: on motherboard IOAPIC #1 intpin 6 -> irq 2 IOAPIC #1 intpin 2 -> irq 5 pci0: on pcib0 cy0: port 0xec80-0xecff mem 0xfe104000-0xfe107fff,0xfe109400-0xfe10947f irq 2 at device 4.0 on pci0 cy0: no ports found! cy0: driver is using old-style compatibility shims cy1: port 0xec00-0xec7f mem 0xfe100000-0xfe103fff,0xfe109000-0xfe10907f irq 5 at device 8.0 on pci0 cy1: no ports found! cy1: driver is using old-style compatibility shims pci0: at 14.0 isab0: at device 15.0 on pci0 isa0: on isab0 atapci0: port 0x8b0-0x8bf at device 15.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 pcib2: on motherboard IOAPIC #1 intpin 0 -> irq 10 pci2: on pcib2 pcib4: at device 2.0 on pci2 IOAPIC #1 intpin 15 -> irq 11 IOAPIC #1 intpin 14 -> irq 13 pci3: on pcib4 ahc0: port 0xcc00-0xccff mem 0xfe7ff000-0xfe7fffff irq 11 at device 4.0 on pci3 aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/255 SCBs ahc1: port 0xc800-0xc8ff mem 0xfe7fe000-0xfe7fefff irq 13 at device 4.1 on pci3 aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/255 SCBs fxp0: port 0xbcc0-0xbcff mem 0xfe500000-0xfe5fffff,0xfe900000-0xfe900fff irq 10 at device 4.0 on pci2 fxp0: Ethernet address 00:06:5b:04:5b:04 inphy0: on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pcib1: on motherboard IOAPIC #1 intpin 1 -> irq 16 pci1: on pcib1 pci1: (vendor=0x14e4, dev=0x1644) at 8.0 irq 16 pcib3: on motherboard pci4: on pcib3 orm0: