From owner-freebsd-mobile Sat Aug 25 20:48:35 2001 Delivered-To: freebsd-mobile@freebsd.org Received: from jacinto.yi.org (dsl-64-34-174-133.telocity.com [64.34.174.133]) by hub.freebsd.org (Postfix) with ESMTP id 1CB2837B409 for ; Sat, 25 Aug 2001 20:48:19 -0700 (PDT) (envelope-from erich@ucsd.edu) Received: from ucsd.edu ([192.168.42.7]) by jacinto.yi.org (8.9.3/8.9.3) with ESMTP id UAA37851; Sat, 25 Aug 2001 20:42:00 -0700 (PDT) (envelope-from erich@ucsd.edu) Message-ID: <3B88718D.5000507@ucsd.edu> Date: Sat, 25 Aug 2001 20:48:29 -0700 From: unsafe at any speed User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.3+) Gecko/20010825 X-Accept-Language: en-us MIME-Version: 1.0 To: Warner Losh Cc: freebsd-mobile@FreeBSD.ORG Subject: Re: ongoing Thinkpad 560X pccard problems References: <3B880B5A.6030104@ucsd.edu> <200108252155.f7PLt5W06955@harmony.village.org> Content-Type: multipart/mixed; boundary="------------060601010604000807060400" Sender: owner-freebsd-mobile@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org This is a multi-part message in MIME format. --------------060601010604000807060400 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit It tries to assign IRQ 11 now, but still can't, with the version check commented out. A boot -v dmesg with this patch is attached below. Note near the beginning it says the pcibios is found at address 0x0! Eric Warner Losh wrote: > In message <3B880B5A.6030104@ucsd.edu> unsafe at any speed writes: > : pci_cfgintr: BIOS 0.00 doesn't support interrupt routing > : pcic0: Failed to allocate managment irq > > Hmmm, the following has a minor chance of working. Please let me > know. It comments out the version check. Version 0.0 is completely > F'd in the head and means that there's no PCI BIOS, the BIOS isn't > returning the right signature or the get version call is returning an > error. > > Warner > > Index: pci_cfgreg.c > =================================================================== > RCS file: /home/imp/FreeBSD/CVS/src/sys/i386/isa/Attic/pci_cfgreg.c,v > retrieving revision 1.1.2.3 > diff -u -r1.1.2.3 pci_cfgreg.c > --- pci_cfgreg.c 2001/08/21 20:13:54 1.1.2.3 > +++ pci_cfgreg.c 2001/08/25 21:51:14 > @@ -103,7 +103,7 @@ > * Look for the interrupt routing table. > */ > /* We use PCI BIOS's PIR table if it's available */ > - if (pcibios_get_version() >= 0x0210 && pt == NULL && > + if (/* pcibios_get_version() >= 0x0210 && */ pt == NULL && > (sigaddr = bios_sigsearch(0, "$PIR", 4, 16, 0)) != 0) { > pt = (struct PIR_table *)(uintptr_t)BIOS_PADDRTOVADDR(sigaddr); > for (cv = (u_int8_t *)pt, ck = 0, i = 0; i < (pt->pt_header.ph_length); i++) { > @@ -212,6 +212,7 @@ > struct bios_regs args; > u_int16_t v; > > +#if 0 > v = pcibios_get_version(); > if (v < 0x0210) { > printf( > @@ -219,6 +220,7 @@ > (v & 0xff00) >> 8, v & 0xff); > return (255); > } > +#endif > if ((bus < 0) || (bus > 255) || (device < 0) || (device > 255) || > (pin < 1) || (pin > 4)) > return(255); > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-mobile" in the body of the message > > --------------060601010604000807060400 Content-Type: text/plain; name="dmesg.0825.-v.pciverpatch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="dmesg.0825.-v.pciverpatch" 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-RC #9: Sat Aug 25 20:19:19 PDT 2001 root@palomar:/usr/src/sys/compile/PALOMAR Calibrating clock(s) ... TSC clock: 231767084 Hz, i8254 clock: 1193139 Hz CLK_USE_I8254_CALIBRATION not specified - using default frequency Timecounter "i8254" frequency 1193182 Hz CLK_USE_TSC_CALIBRATION not specified - using old calibration method CPU: Pentium/P55C (quarter-micron) (231.78-MHz 586-class CPU) Origin = "GenuineIntel" Id = 0x581 Stepping = 1 Features=0x8001bf real memory = 100466688 (98112K bytes) Physical memory chunk(s): 0x00001000 - 0x0009efff, 647168 bytes (158 pages) 0x0036b000 - 0x05fc7fff, 96849920 bytes (23645 pages) avail memory = 94425088 (92212K bytes) bios32: Found BIOS32 Service Directory header at 0xc00fd800 bios32: Entry = 0xfd820 (c00fd820) Rev = 0 Len = 1 pcibios: PCI BIOS entry at 0x0 pnpbios: Found PnP BIOS data at 0xc00fe700 pnpbios: Entry = f0000:e724 Rev = 1.0 pnpbios: Event flag at 415 Other BIOS signatures found: ACPI: 00000000 Preloaded elf kernel "kernel" at 0xc0345000. Preloaded userconfig_script "/boot/kernel.conf" at 0xc03450a8. Intel Pentium detected, installing workaround for F00F bug md0: Malloc disk Creating DISK md0 pci_open(1): mode 1 addr port (0x0cf8) is 0x80000050 pci_open(1a): mode1res=0x80000000 (0x80000000) pci_cfgcheck: device 0 [class=060000] [hdr=00] is there (id=71008086) Using $PIR table, 4 entries at 0xc00fcc40 apm0: on motherboard apm: found APM BIOS v1.2, connected at v1.2 npx0: on motherboard npx0: INT 16 interface i586_bzero() bandwidth = 174003828 bytes/sec bzero() bandwidth = 711237553 bytes/sec pcib0: on motherboard found-> vendor=0x8086, dev=0x7100, revid=0x01 class=06-00-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 found-> vendor=0x8086, dev=0x7110, revid=0x01 class=06-80-00, hdrtype=0x00, mfdev=1 subordinatebus=0 secondarybus=0 found-> vendor=0x8086, dev=0x7111, revid=0x01 class=01-01-80, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 map[20]: type 1, range 32, base 0000fcf0, size 4 found-> vendor=0x8086, dev=0x7112, revid=0x01 class=0c-03-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 intpin=d, irq=11 map[20]: type 1, range 32, base 00009000, size 5 found-> vendor=0x8086, dev=0x7113, revid=0x01 class=06-80-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 map[90]: type 1, range 32, base 0000efa0, size 4 found-> vendor=0x104c, dev=0xac16, revid=0x02 class=06-07-00, hdrtype=0x02, mfdev=1 subordinatebus=3 secondarybus=1 intpin=a, irq=255 map[10]: type 1, range 32, base 20822000, size 12 found-> vendor=0x104c, dev=0xac16, revid=0x02 class=06-07-00, hdrtype=0x02, mfdev=1 subordinatebus=6 secondarybus=4 intpin=b, irq=255 map[10]: type 1, range 32, base 20821000, size 12 found-> vendor=0x10c8, dev=0x0004, revid=0x00 class=03-00-00, hdrtype=0x00, mfdev=0 subordinatebus=0 secondarybus=0 intpin=a, irq=11 map[10]: type 1, range 32, base 08000000, size 24 map[14]: type 1, range 32, base 09200000, size 21 map[18]: type 1, range 32, base 09000000, size 20 pci0: on pcib0 isab0: at device 1.0 on pci0 isa0: on isab0 atapci0: port 0xfcf0-0xfcff at device 1.1 on pci0 ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0xfcf0 ata0: mask=03 status0=50 status1=50 ata0: mask=03 ostat0=50 ostat2=50 ata0-master: ATAPI probe a=00 b=00 ata0-slave: ATAPI probe a=00 b=00 ata0: mask=03 status0=50 status1=00 ata0-master: ATA probe a=01 b=a5 ata0-slave: ATA probe a=a5 b=a5 ata0: devices=03 ata0: at 0x1f0 irq 14 on atapci0 ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0xfcf8 ata1: mask=00 status0=ff status1=ff ata1: probe allocation failed uhci0: port 0x9000-0x901f irq 11 at device 1.2 on pci0 usb0: on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered chip1: port 0xefa0-0xefaf at device 1.3 on pci0 pci_cfgintr_search: linked (60) to configured irq 0 at 0:1:0 pci_cfgintr: ROUTE_INTERRUPT failed pcic0: mem 0x20822000-0x20822fff at device 2.0 on pci0 pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][CSC parallel isa irq] pci_cfgintr_search: linked (60) to configured irq 0 at 0:1:0 pci_cfgintr: ROUTE_INTERRUPT failed pcic0: Failed to allocate managment irq device_probe_and_attach: pcic0 attach returned 5 pci_cfgintr_virgin: using routable PCI-only interrupt 11 pci_cfgintr: ROUTE_INTERRUPT failed pcic0: mem 0x20821000-0x20821fff at device 2.1 on pci0 pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][CSC parallel isa irq] pci_cfgintr_virgin: using routable PCI-only interrupt 11 pci_cfgintr: ROUTE_INTERRUPT failed pcic0: Failed to allocate managment irq device_probe_and_attach: pcic0 attach returned 5 pci0: (vendor=0x10c8, dev=0x0004) at 3.0 irq 11 ata-: ata0 exists, using next available unit number Trying Read_Port at 203 Trying Read_Port at 243 Trying Read_Port at 283 Trying Read_Port at 2c3 Trying Read_Port at 303 Trying Read_Port at 343 Trying Read_Port at 383 Trying Read_Port at 3c3 isa_probe_children: disabling PnP devices isa_probe_children: probing non-PnP devices orm0: