Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Aug 2001 20:48:29 -0700
From:      unsafe at any speed <erich@ucsd.edu>
To:        Warner Losh <imp@harmony.village.org>
Cc:        freebsd-mobile@FreeBSD.ORG
Subject:   Re: ongoing Thinkpad 560X pccard problems
Message-ID:  <3B88718D.5000507@ucsd.edu>
References:  <3B880B5A.6030104@ucsd.edu> <200108252155.f7PLt5W06955@harmony.village.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
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: <APM BIOS> on motherboard
apm: found APM BIOS v1.2, connected at v1.2
npx0: <math processor> on motherboard
npx0: INT 16 interface
i586_bzero() bandwidth = 174003828 bytes/sec
bzero() bandwidth = 711237553 bytes/sec
pcib0: <Host to PCI bridge> 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: <PCI bus> on pcib0
isab0: <Intel 82371AB PCI to ISA bridge> at device 1.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 ATA33 controller> 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: <Intel 82371AB/EB (PIIX4) USB controller> port 0x9000-0x901f irq 11 at device 1.2 on pci0
usb0: <Intel 82371AB/EB (PIIX4) USB controller> 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: <Intel 82371AB Power management controller> 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: <TI PCI-1250 PCI-CardBus Bridge> 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: <TI PCI-1250 PCI-CardBus Bridge> 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: <NeoMagic MagicGraph 128XD SVGA controller> (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: <Option ROM> at iomem 0xc0000-0xc9fff on isa0
ata2 failed to probe at port 0x1f0 irq 14 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
atkbd: the current kbd controller command byte 0065
atkbd: keyboard ID 0x54ab (2)
kbd0 at atkbd0
kbd0: atkbd0, AT 101/102 (2), config:0x1, flags:0x3d0000
psm0: current command byte:0065
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0-00, 2 buttons
psm0: config:00000000, flags:00000000, packet size:3
psm0: syncmask:c0, syncbits:00
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
fb0: vga0, vga, type:VGA (5), flags:0x7007f
fb0: port:0x3c0-0x3df, crtc:0x3d4, mem:0xa0000 0x20000
fb0: init mode:24, bios mode:3, current mode:24
fb0: window:0xc00b8000 size:32k gran:32k, buf:0 size:32k
VGA parameters upon power-up
50 18 10 00 00 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 05 50 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
VGA parameters in BIOS for mode 24
50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
EGA/VGA parameters to be used for mode 24
50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sc0: fb0, kbd0, terminal emulator: sc (syscons terminal)
pcic0 failed to probe at port 0x3e0 iomem 0xd0000 on isa0
sio0: irq maps: 0x1 0x11 0x1 0x1
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
mss_detect - chip revision 0x0a
mss_detect() - Detected CS4236
pcm0: <CS4236> at port 0x52c-0x533,0xf8c-0xf94,0xe0e irq 5 drq 1 flags 0xa110 on isa0
pcm: setmap 3000, 1000; 0xc6922000 -> 3000
pcm: setmap 4000, 1000; 0xc6923000 -> 4000
isa_probe_children: probing PnP devices
BIOS Geometries:
 0:03df7f3f 0..991=992 cylinders, 0..127=128 heads, 1..63=63 sectors
 0 accounted for
Device configuration finished.
bpf: lo0 attached
bpf: faith0 attached
IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to deny, logging disabled
ata0-slave: ata_command: timeout waiting for intr
ata0-slave: identify failed
ata0-master: success setting UDMA2 on Intel chip
Creating DISK ad0
ad0: <IBM-DTCA-24090/TC6IAB4A> ATA-3 disk at ata0-master
ad0: 3909MB (8007552 sectors), 7944 cyls, 16 heads, 63 S/T, 512 B/S
ad0: 16 secs/int, 1 depth queue, UDMA33
ad0: piomode=4 dmamode=2 udmamode=2 cblid=0
ad0: 3909MB <IBM-DTCA-24090> [7944/16/63] at ata0-master UDMA33
Mounting root from ufs:/dev/ad0s1a
ad0s1: type 0xa5, start 63, end = 8007551, size 8007489 : OK
start_init: trying /sbin/init

--------------060601010604000807060400--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-mobile" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B88718D.5000507>