Date: Mon, 15 Dec 1997 12:59:59 +0600 (NS) From: nnd@itfs.nsk.su To: FreeBSD-gnats-submit@FreeBSD.ORG Subject: i386/5300: /sys/i386/isa/pcibus.c does'nt discovered Cyclades Cyclom-16YeP Message-ID: <199712150659.MAA01489@ctserv.itfs.nsk.su> Resent-Message-ID: <199712150720.XAA29341@hub.freebsd.org>
index | next in thread | raw e-mail
>Number: 5300
>Category: i386
>Synopsis: /sys/i386/isa/pcibus.c does'nt discovered Cyclades Cyclom-16YeP
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sun Dec 14 23:20:00 PST 1997
>Last-Modified:
>Originator: Nickolay N. Dudorov
>Organization:
STP Infoteka
>Release: FreeBSD 3.0-971208-SNAP i386
>Environment:
PC with PCI motherboard an ONLY Cyclades Cyclom-16YeP
on the PCI bus.
>Description:
Here is the (extract from) boot:-v dmesg for one of my PCs
before and after the next "patch" was applied to /sys/i386/isa/pcibus.c
=============================================================
--- pcibus.c.ORIG Sun Dec 14 14:47:08 1997
+++ pcibus.c Mon Dec 15 12:51:42 1997
@@ -162,7 +162,7 @@
class = inl(pci_cfgenable(0, device, 0, 8, 4)) >> 8;
if (bootverbose)
printf("[class=%06x] ", class);
- if (class == 0 || (class & 0xf8f0ff) != 0)
+ if (class == 0 || (class & 0xf870ff) != 0)
continue;
header = inb(pci_cfgenable(0, device, 0, 14, 1));
===============================================================
Before:
Dec 14 14:34:25 ctserv /kernel: Copyright (c) 1992-1997 FreeBSD Inc.
Dec 14 14:34:25 ctserv /kernel: Copyright (c) 1982, 1986, 1989, 1991, 1993
Dec 14 14:34:25 ctserv /kernel: The Regents of the University of California. All rights reserved.
Dec 14 14:34:25 ctserv /kernel: FreeBSD 3.0-971208-SNAP #1: Sat Dec 13 20:39:41 NS 1997
Dec 14 14:34:25 ctserv /kernel: nnd@ctserv.itfs.nsk.su:/usr/src/sys/compile/TSERV
Dec 14 14:34:25 ctserv /kernel: Calibrating clock(s) ... i8254 clock: 1193421 Hz
Dec 14 14:34:25 ctserv /kernel: CLK_USE_I8254_CALIBRATION not specified - using default frequency
Dec 14 14:34:25 ctserv /kernel: CPU: i486 DX2 (486-class CPU)
Dec 14 14:34:25 ctserv /kernel: Origin = "GenuineIntel" Id = 0x435 Stepping=5
Dec 14 14:34:25 ctserv /kernel: Features=0x3<FPU,VME>
Dec 14 14:34:25 ctserv /kernel: real memory = 16777216 (16384K bytes)
Dec 14 14:34:25 ctserv /kernel: Physical memory chunk(s):
Dec 14 14:34:26 ctserv /kernel: 0x00001000 - 0x0009efff, 647168 bytes (158 pages)
Dec 14 14:34:26 ctserv /kernel: 0x00206000 - 0x00ffdfff, 14647296 bytes (3576 pages)
Dec 14 14:34:26 ctserv /kernel: avail memory = 14688256 (14344K bytes)
Dec 14 14:34:26 ctserv /kernel: Found BIOS32 Service Directory header at 0xf00f0120
Dec 14 14:34:26 ctserv /kernel: Entry = 0xf138c (0xf00f138c) Rev = 0 Len = 1
Dec 14 14:34:26 ctserv /kernel: PCI BIOS entry at 0x1370
Dec 14 14:34:26 ctserv /kernel: Other BIOS signatures found:
Dec 14 14:34:26 ctserv /kernel: ACPI: 00000000
Dec 14 14:34:26 ctserv /kernel: $PnP: 000f0130
Dec 14 14:34:26 ctserv /kernel: pci_open(1): mode 1 addr port (0x0cf8) is 0x80002858
Dec 14 14:34:26 ctserv /kernel: pci_open(1a): mode1res=0x80000000 (0x80000000)
Dec 14 14:34:26 ctserv /kernel: pci_cfgcheck: device 0 1 2 3 4 5 [class=000000] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [class=078000] 20 21 22 23 24 25 26 27 28 29 30 31 -- nothing found
Dec 14 14:34:26 ctserv /kernel: pci_open(1b): mode1res=0xff000001 (0xff000001)
Dec 14 14:34:26 ctserv /kernel: pci_open(2): mode 2 enable port (0x0cf8) is 0xff
Dec 14 14:34:26 ctserv /kernel: Probing for devices on the ISA bus:
After:
Dec 14 14:48:41 ctserv /kernel: Copyright (c) 1992-1997 FreeBSD Inc.
Dec 14 14:48:41 ctserv /kernel: Copyright (c) 1982, 1986, 1989, 1991, 1993
Dec 14 14:48:41 ctserv /kernel: The Regents of the University of California. All rights reserved.
Dec 14 14:48:41 ctserv /kernel: FreeBSD 3.0-971208-SNAP #2: Sun Dec 14 14:47:22 NS 1997
Dec 14 14:48:41 ctserv /kernel: nnd@ctserv.itfs.nsk.su:/usr/src/sys/compile/TSERV
Dec 14 14:48:41 ctserv /kernel: Calibrating clock(s) ... i8254 clock: 1193422 Hz
Dec 14 14:48:41 ctserv /kernel: CLK_USE_I8254_CALIBRATION not specified - using default frequency
Dec 14 14:48:41 ctserv /kernel: CPU: i486 DX2 (486-class CPU)
Dec 14 14:48:41 ctserv /kernel: Origin = "GenuineIntel" Id = 0x435 Stepping=5
Dec 14 14:48:41 ctserv /kernel: Features=0x3<FPU,VME>
Dec 14 14:48:41 ctserv /kernel: real memory = 16777216 (16384K bytes)
Dec 14 14:48:41 ctserv /kernel: Physical memory chunk(s):
Dec 14 14:48:41 ctserv /kernel: 0x00001000 - 0x0009efff, 647168 bytes (158 pages)
Dec 14 14:48:41 ctserv /kernel: 0x00206000 - 0x00ffdfff, 14647296 bytes (3576 pages)
Dec 14 14:48:41 ctserv /kernel: avail memory = 14688256 (14344K bytes)
Dec 14 14:48:41 ctserv /kernel: Found BIOS32 Service Directory header at 0xf00f0120
Dec 14 14:48:41 ctserv /kernel: Entry = 0xf138c (0xf00f138c) Rev = 0 Len = 1
Dec 14 14:48:41 ctserv /kernel: PCI BIOS entry at 0x1370
Dec 14 14:48:42 ctserv /kernel: Other BIOS signatures found:
Dec 14 14:48:42 ctserv /kernel: ACPI: 00000000
Dec 14 14:48:42 ctserv /kernel: $PnP: 000f0130
Dec 14 14:48:42 ctserv /kernel: pci_open(1): mode 1 addr port (0x0cf8) is 0x80002858
Dec 14 14:48:42 ctserv /kernel: pci_open(1a): mode1res=0x80000000 (0x80000000)
Dec 14 14:48:42 ctserv /kernel: pci_cfgcheck: device 0 1 2 3 4 5 [class=000000] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [class=078000] [hdr=00] is there (id=0101120e)
Dec 14 14:48:42 ctserv /kernel: Probing for devices on PCI bus 0:
Dec 14 14:48:42 ctserv /kernel: found-> vendor=0x8086, dev=0x0486, revid=0x02
Dec 14 14:48:42 ctserv /kernel: class=00-00-00, hdrtype=0x00, mfdev=0
Dec 14 14:48:42 ctserv /kernel: chip0: <Intel 82425EX PCI system controller> rev 0x02 on pci0.5.0
Dec 14 14:48:42 ctserv /kernel: Clock 33MHz, L1 Cache Write-through
Dec 14 14:48:42 ctserv /kernel: L2 Cache , 3-2-2-2/3-2-2-2
Dec 14 14:48:42 ctserv /kernel: DRAM: Fast Code Read, Fast Data Read, Fast Write,
Dec 14 14:48:42 ctserv /kernel: Timing: RAS: 2 Clocks, CAS Read: , CAS Write: 2/1
Dec 14 14:48:42 ctserv /kernel: CPU-to-PCI Byte Merging
Dec 14 14:48:42 ctserv /kernel: CPU-to-PCI Bursting
Dec 14 14:48:42 ctserv /kernel: PCI Posted Writes
Dec 14 14:48:42 ctserv /kernel: DRAM Parity Disabled
Dec 14 14:48:42 ctserv /kernel: PCI IDE controller: Primary (1F0h-1F7h,3F6h,3F7h) RTC (70-77h)
Dec 14 14:48:42 ctserv /kernel: found-> vendor=0x120e, dev=0x0101, revid=0x01
Dec 14 14:48:42 ctserv /kernel: class=07-80-00, hdrtype=0x00, mfdev=0
Dec 14 14:48:42 ctserv /kernel: intpin=a, irq=11
Dec 14 14:48:42 ctserv /kernel: map[0]: type 1, range 32, base ffbffc00, size 7
Dec 14 14:48:42 ctserv /kernel: map[1]: type 4, range 32, base 0000fc80, size 7
Dec 14 14:48:42 ctserv /kernel: map[2]: type 1, range 32, base ffbf8000, size 14
Dec 14 14:48:42 ctserv /kernel: cy0: <Cyclades Cyclom-Y Serial Adapter> rev 0x01 int a irq 11 on pci0.19.0
Dec 14 14:48:42 ctserv /kernel: Probing for devices on the ISA bus:
>How-To-Repeat:
Get the PC with such PCI config and boot FreeBSD-current
on it.
>Fix:
Substitute "right" value for "0xf8f0ff" class-mask
OR applay abovementioned patch.
>Audit-Trail:
>Unformatted:
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199712150659.MAA01489>
