Date: Tue, 14 Sep 1999 16:42:42 +0930 (CST) From: "Daniel O'Connor" <doconnor@gsoft.com.au> To: freebsd-stable@freebsd.org Subject: PCI card initialisation order? Message-ID: <XFMail.990914164242.doconnor@gsoft.com.au>
next in thread | raw e-mail | index | archive | help
This message is in MIME format --_=XFMail.1.3.p0.FreeBSD:990914164242:7396=_ Content-Type: multipart/mixed; boundary="_=XFMail.1.3.p0.FreeBSD:990914164241:7396=_" This message is in MIME format --_=XFMail.1.3.p0.FreeBSD:990914164241:7396=_ Content-Type: text/plain; charset=us-ascii Hi, I have a custom data acquisition system here which runs FreeBSD (yay!). It used to be 2.2.8+CAM, but I am pushing to make our new setup run 3-STABLE. I upgraded a machine here, and after that our custom PCI card stopped working properly. I fixed this by going into the BIOS and changing the option labelled 'PCI Device Search Order' from 'First-Last' to 'Last-First'. The problem can also be fixed by swapping the network card and custom DA card around. The problem appears to be that the interrupt handler (at least) is never called. (I can tell because a printf I placed in the interrupt handler doesn't do anything) I would assume its a BIOS/mobo bug but the exact same setup worked fine in 2.2.8+CAM. This is a Supermicro P6SBS (Intel 440BX chipset) with 128meg of RAM and a PII-450. The card order in the slots is Dec21143, Nothing, Custom DA card, S3 Virge DX. (From 1 to 4) There is one difference in the dmesg's which illustrates that the BIOS set the cards up slightly differently, ie The non working setup -> Working around PLX bug for PCIBAR0 Working around PLX bug for PCIBAR1 gsio0: LCR at 0xe080, I/O at 0xefa0, memory at 0xc581c000 And the working setup -> Working around PLX bug for PCIBAR0 gsio0: LCR at 0xec00, I/O at 0xefa0, memory at 0xc581c000 The LCR is a region of registers to control the PLX 9050 chip we use to do the PCI goo, the I/O region is a region we use to control the hardware which is memory mapped. The 'PLX bug' is a problem in the PLX chip such that if bit 7 of the address is set then the chip will not allow the bus master to read from that region (oops). So basically my question is, has anyone seen this sort of behaviour before? --- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum --_=XFMail.1.3.p0.FreeBSD:990914164241:7396=_ Content-Disposition: attachment; filename="dmesg.works" Content-Transfer-Encoding: 7bit Content-Description: dmesg.works Content-Type: text/plain; charset=us-ascii; name=dmesg.works; SizeOnDisk=4700 Copyright (c) 1992-1999 FreeBSD Inc. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. FreeBSD 3.3-RC #2: Tue Sep 14 14:08:32 CST 1999 root@test2.gsoft.com.au:/local0/src/sys/compile/GENESIS Timecounter "i8254" frequency 1193182 Hz CPU: Pentium III (451.03-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x672 Stepping = 2 Features=0x387fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CM OV,PAT,PSE36,<b18>,MMX,FXSR,<b25>> real memory = 134217728 (131072K bytes) config> di lnc0 No such device: lnc0 Invalid command or syntax. Type `?' for help. config> di le0 No such device: le0 Invalid command or syntax. Type `?' for help. config> di ie0 No such device: ie0 Invalid command or syntax. Type `?' for help. config> di fe0 No such device: fe0 Invalid command or syntax. Type `?' for help. config> di ex0 No such device: ex0 Invalid command or syntax. Type `?' for help. config> di ep0 No such device: ep0 Invalid command or syntax. Type `?' for help. config> di ed0 No such device: ed0 Invalid command or syntax. Type `?' for help. config> di cs0 No such device: cs0 Invalid command or syntax. Type `?' for help. config> di wt0 No such device: wt0 Invalid command or syntax. Type `?' for help. config> di scd0 No such device: scd0 Invalid command or syntax. Type `?' for help. config> di mcd0 No such device: mcd0 Invalid command or syntax. Type `?' for help. config> di matcd0 No such device: matcd0 Invalid command or syntax. Type `?' for help. config> di bt0 No such device: bt0 Invalid command or syntax. Type `?' for help. config> di aha0 No such device: aha0 Invalid command or syntax. Type `?' for help. config> di adv0 No such device: adv0 Invalid command or syntax. Type `?' for help. config> q avail memory = 127619072 (124628K bytes) Preloaded elf kernel "kernel" at 0xc02a3000. Preloaded userconfig_script "/boot/kernel.conf" at 0xc02a309c. Pentium Pro MTRR support enabled Probing for devices on PCI bus 0: chip0: <Intel 82443BX host to PCI bridge> rev 0x02 on pci0.0.0 chip1: <Intel 82443BX host to AGP bridge> rev 0x02 on pci0.1.0 chip2: <Intel 82371AB PCI to ISA bridge> rev 0x02 on pci0.7.0 ide_pci0: <Intel PIIX4 Bus-master IDE controller> rev 0x01 on pci0.7.1 chip3: <Intel 82371AB Power management controller> rev 0x02 on pci0.7.3 ahc0: <Adaptec aic7895 Ultra SCSI adapter> rev 0x04 int a irq 9 on pci0.14.0 ahc0: aic7895 Wide Channel A, SCSI Id=7, 16/255 SCBs ahc1: <Adaptec aic7895 Ultra SCSI adapter> rev 0x04 int b irq 9 on pci0.14.1 ahc1: aic7895 Wide Channel B, SCSI Id=7, 16/255 SCBs de0: <Digital 21143 Fast Ethernet> rev 0x41 int a irq 9 on pci0.15.0 de0: 21143 [10-100Mb/s] pass 4.1 (invalid EESPROM checksum) de0: address 00:40:c7:99:2d:71 gsio0: <Genesis Software I/O adapter> rev 0x01 int a irq 5 on pci0.18.0 gsio sc structure is at 0xc0c94000 and has size 49228 Working around PLX bug for PCIBAR0 gsio0: LCR at 0xec00, I/O at 0xefa0, memory at 0xc581c000 vga0: <S3 Trio 64 graphics accelerator> rev 0x16 int a irq 11 on pci0.20.0 Probing for devices on PCI bus 1: Probing for PnP devices: Probing for devices on the ISA bus: sc0 on isa sc0: VGA color <16 virtual consoles, flags=0x0> atkbdc0 at 0x60-0x6f on motherboard atkbd0 irq 1 on isa psm0 irq 12 on isa psm0: model Generic PS/2 mouse, device ID 0 sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa sio0: type 16550A sio1 at 0x2f8-0x2ff irq 3 on isa sio1: type 16550A ppc0 at 0x378 irq 7 on isa ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode lpt0: <generic printer> on ppbus 0 lpt0: Interrupt-driven port wdc0 not found at 0x1f0 wdc1 not found at 0x170 fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa fdc0: FIFO enabled, 8 bytes threshold fd0: 1.44MB 3.5in vga0 at 0x3b0-0x3df maddr 0xa0000 msize 131072 on isa npx0 on motherboard npx0: INT 16 interface apm0 on isa apm: found APM BIOS version 1.2 mdsio0: configured irq 10 not in bitmap of probed irqs 0xc0236150 mdsio0 at 0x3e8-0x3ef irq 10 on isa mdsio0: type 16550A, 4-wire mode, automatic transmit control. ccd0-3: Concatenated disk drivers Waiting 2 seconds for SCSI devices to settle de0: enabling 10baseT port changing root device to da0s1a cd0 at ahc0 bus 0 target 6 lun 0 cd0: <MATSHITA CD-R CW-7503 1.04> Removable CD-ROM SCSI-2 device cd0: 10.000MB/s transfers (10.000MHz, offset 8) cd0: Attempt to query device size failed: NOT READY, Medium not present - tray c losed da0 at ahc1 bus 0 target 0 lun 0 da0: <WDIGTL WDE9180 ULTRA2 1.30> Fixed Direct Access SCSI-2 device da0: 40.000MB/s transfers (20.000MHz, offset 8, 16bit) da0: 8727MB (17873040 512 byte sectors: 255H 63S/T 1112C) Start pid=2 <pagedaemon> Start pid=3 <vmdaemon> Start pid=4 <syncer> --_=XFMail.1.3.p0.FreeBSD:990914164241:7396=_-- End of MIME message --_=XFMail.1.3.p0.FreeBSD:990914164242:7396=_ Content-Type: application/pgp-signature -----BEGIN PGP MESSAGE----- Version: 2.6.3ia iQCVAwUBN931albYW/HEoF9pAQFtHwQAhyCKR47QwGLOPDpVigCIMQkj3lMTXmWW oKrw5OzSqcJYalKaUCQbxpeGAHEe0j3oYTsuC5jWmG/ujdIzkLZY0z44YIUHMC0P npSoXiQxGwnvbhoaq4/X/AuKyXs7/Y3m7IajuNvGdroVgLCtRKY+y0d2ns0g9sbV OTagLlqB4pU= =3cd8 -----END PGP MESSAGE----- --_=XFMail.1.3.p0.FreeBSD:990914164242:7396=_-- End of MIME message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.990914164242.doconnor>