Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Aug 2000 16:19:19 -0700 (PDT)
From:      David Wolfskill <dhw@whistle.com>
To:        freebsd-mobile@freebsd.org
Subject:   pccardd not recognizing card insertion/removal? (4.1-S)
Message-ID:  <200008072319.QAA07452@pau-amma.whistle.com>

next in thread | raw e-mail | index | archive | help
I have a laptop (NEC Versa 6030X; I'll append the /var/run/dmesg.boot from
a "boot -v" after my .sig) running 4.1-STABLE that I've been using to try
to track -STABLE, and which I've been updating at least once (usually 3
or 4 times) per week.  (It takes a while, which is one reason I don't do
it more often.)

I had been using an Ethernet adapter on the box that can be persuaded to
run as ed1, though if one of the cats rubs against the dongle, there's a
high probability that the connection will become just flaky enough to lock
the machine up solid enough to require a power-cycle.

Based on the (positive) experience I'd had with 802.11 cards at work, I
decided to try implementing some of that at home -- thus providing a
somewhat more mobile target (as well as one with fewer exposed parts) for
the cat.

Friday evening, I managed to get it to work, though the sequence of
events involved a lot of trial and error, as well as use of "pccardc
enabler".  I don't have a log of that, unfortunately.  But the following
morning, the box was locked up solid... and a power-cycle, while
allowing the box to run, did not do anything useful for the wireless
card.

The next chance I had to do anything with it was Sunday morning; after a
few more trials, and noticing that the machine really seemed to fail to
apply power to the card when it was inserted (though it did seem to
apply power if the card had been inserted prior to the device probes
during booting), I figured that it had been a few days since last CVSup,
so it was about time to do that.

I had picked up a docking station at a local place that sells such
miscellenia -- one that included an xl 10/100 Ethernet card, so I placed
the box in the docking station, did the CVSup, and did the usual upgrade
(noting with some pleasure that the named kernel was installed as
/kernel).

So now it's running fairly recent code, and it's still failing in
obnoxious ways.

For example, in order to communicate with it now (to get the data over),
I connected the NE2000/ed1 device via slot 0 (after the "boot-v").  Sure
enough, no lights went on.  Here's what happened next (with editorial
comments in square brackets [like this]):

dhw-laptop[2] sudo pccardc dumpcis
[sudo nattering elided -- dhw]
2 slots found
dhw-laptop[3] sudo pccardc power 0 1
dhw-laptop[4] tail -f /var/log/messages
Aug  7 15:13:40 dhw-laptop /kernel: acd0: Mechanism: ejectable tray
Aug  7 15:13:40 dhw-laptop /kernel: acd0: Medium: no/blank disc inside, unlocked
Aug  7 15:13:40 dhw-laptop /kernel: Mounting root from ufs:/dev/ad0s1a
Aug  7 15:13:40 dhw-laptop /kernel: ad0s1: type 0xa5, start 63, end = 8007551, size 8007489 : OK
Aug  7 15:13:40 dhw-laptop /kernel: start_init: trying /sbin/init
Aug  7 15:13:48 dhw-laptop /kernel: Linux-ELF exec handler installed
Aug  7 15:26:19 dhw-laptop sudo:    david : TTY=ttyv1 ; PWD=/home/david ; USER=root ; COMMAND=/usr/sbin/pccardc dumpcis
Aug  7 15:26:26 dhw-laptop sudo:    david : TTY=ttyv1 ; PWD=/home/david ; USER=root ; COMMAND=/usr/sbin/pccardc power 0 1
Aug  7 15:26:27 dhw-laptop /kernel: pccard: card inserted, slot 0
Aug  7 15:26:33 dhw-laptop pccardd[51]: Card "NDC"("Ethernet") [A] [004743118001] matched "NDC" ("Ethernet") [(null)] [(null)] 
Aug  7 15:26:38 dhw-laptop /kernel: ed-: ed0 exists, using next available unit number
Aug  7 15:26:38 dhw-laptop pccardd[51]: driver allocation failed for NDC(Ethernet): Device not configured
^C

dhw-laptop[5] sudo sh /usr/local/etc/rc.d/ed1.sh.noauto

[This file reads:
#! /bin/sh
pccardc enabler 0 ed1 -m 2000 0d8000 16 -a 280 -i 11 && /etc/pccard_ether ed1

I haven't figured out what the equivalent is in pccard.conf-speak.

Anf here's what the log has to say:

Aug  7 15:26:55 dhw-laptop sudo:    david : TTY=ttyv1 ; PWD=/home/david ; USER=root ; COMMAND=/bin/sh /usr/local/etc/rc.d/ed1.sh.noauto
Aug  7 15:26:55 dhw-laptop /kernel: pcic: I/O win 0 flags 14 280-29f
Aug  7 15:26:55 dhw-laptop /kernel: pcic: I/O win 0 flags 4 280-29f
Aug  7 15:26:55 dhw-laptop /kernel: ed1 at port 0x280-0x29f iomem 0xd8000-0xdbfff irq 11 slot 0 on pccard0
Aug  7 15:26:55 dhw-laptop /kernel: pcic: I/O win 0 flags 14 280-29f
Aug  7 15:26:55 dhw-laptop /kernel: bpf: ed1 attached
Aug  7 15:26:55 dhw-laptop /kernel: ed1: address 00:80:c6:f6:15:13, type NE2000 (16 bit) 
Aug  7 15:27:03 dhw-laptop dhclient: New IP Address(ed1): 207.76.205.198
Aug  7 15:27:03 dhw-laptop dhclient: New Subnet Mask (ed1): 255.255.255.0
Aug  7 15:27:03 dhw-laptop dhclient: New Broadcast Address(ed1): 207.76.205.255
Aug  7 15:27:03 dhw-laptop dhclient: New Routers: 207.76.205.129

so that seems to function, at least.]


But I don't understand why pccardd didn't even seem to notice when I
inserted the card.  /usr/src/usr.sbin/pccard/pccardd/pccardd.c is
$FreeBSD: src/usr.sbin/pccard/pccardd/pccardd.c,v 1.6.2.2 2000/06/29 08:23:26
 roberto Exp $


I mentioned this to one of my colleagues, who suggested that I try
configuring the kernel to specify polling mode (by not specifying an
IRQ) for the pcic device.  I tried that, and when I inserted the card, I
received a somewhat graftifying message informing me that pccardd
noticed that the card had been inserted.  And then, about 1 second
later, it informed me of this again.  (This was less gratifying.)  After
about the 8th time, the novelty wore off rather thoroughly (and there
seemed to be no progress toward actually doing anything with the card),
so I removed it, whereupon pccardd notified me of its removal (only
once; I suppose I shall be thankful that it didn't stack the insertion
notifications and feel compelled to pop removal messages off to
compensate).

So, I have a machine and incentive; what more can I do to help?

As noted, I'll append the /var/run/dmesg.boot after my .sig.  The
pcic-related lines from the kernel config are those from GENERIC (now
that I switched back); for reference:

# PCCARD (PCMCIA) support
device		card
device		pcic0	at isa? irq 10 port 0x3e0 iomem 0xd0000
device		pcic1	at isa? irq 11 port 0x3e2 iomem 0xd4000 disable

options 	PCIC_RESUME_RESET	# reset after resume


(OK; I admit it:  the PCIC_RESUME_RESET line hadn't been in there
originally.  When I switched back to specifying an IRQ, I stuck that in,
too.  It doesn't seem to have affected the reported symptoms in any
way.)

Thanks,
david
-- 
David Wolfskill		dhw@whistle.com		UNIX System Administrator
voice: 650/577-7158	TIE: 8/499-7158		FAX: 650/372-5915


Copyright (c) 1992-2000 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.1-STABLE #31: Mon Aug  7 15:09:45 PDT 2000
    root@dhw-laptop.catwhisker.org:/home/david/build/src/sys/compile/LAPTOP
Calibrating clock(s) ... TSC clock: 132973313 Hz, i8254 clock: 1193350 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/P54C (132.96-MHz 586-class CPU)
  Origin = "GenuineIntel"  Id = 0x52c  Stepping = 12
  Features=0x1bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
real memory  = 33554432 (32768K bytes)
Physical memory chunk(s):
0x00001000 - 0x0009efff, 647168 bytes (158 pages)
0x003ba000 - 0x01ff7fff, 29614080 bytes (7230 pages)
bios32: Found BIOS32 Service Directory header at 0xc00fda70
bios32: Entry = 0xf65c2 (c00f65c2)  Rev = 0  Len = 1
pcibios: PCI BIOS entry at 0xf7
pnpbios: Found PnP BIOS data at 0xc00fda80
pnpbios: Entry = f0000:513e  Rev = 1.0
pnpbios: Event flag at fa095
Other BIOS signatures found:
ACPI: 00000000
Preloaded elf kernel "kernel" at 0xc03a1000.
Intel Pentium detected, installing workaround for F00F bug
md0: Malloc disk
Creating DISK md0
pci_open(1):	mode 1 addr port (0x0cf8) is 0x80000058
pci_open(1a):	mode1res=0x80000000 (0x80000000)
pci_cfgcheck:	device 0 [class=060000] [hdr=00] is there (id=12358086)
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 = 173701580 bytes/sec
bzero() bandwidth = 651465798 bytes/sec
pci_open(1):	mode 1 addr port (0x0cf8) is 0x800008d4
pci_open(1a):	mode1res=0x80000000 (0x80000000)
pci_cfgcheck:	device 0 [class=060000] [hdr=00] is there (id=12358086)
pcib0: <Host to PCI bridge> on motherboard
found->	vendor=0x8086, dev=0x1235, revid=0x02
	class=06-00-00, hdrtype=0x00, mfdev=0
	subordinatebus=0 	secondarybus=0
found->	vendor=0x8086, dev=0x1234, revid=0x03
	class=06-80-00, hdrtype=0x00, mfdev=0
	subordinatebus=0 	secondarybus=0
found->	vendor=0x102c, dev=0x00e0, revid=0x45
	class=03-00-00, hdrtype=0x00, mfdev=0
	subordinatebus=0 	secondarybus=0
	map[10]: type 1, range 32, base fd000000, size 24
found->	vendor=0x104c, dev=0xac12, revid=0x04
	class=06-07-00, hdrtype=0x02, mfdev=1
	subordinatebus=0 	secondarybus=0
	intpin=a, irq=255
found->	vendor=0x104c, dev=0xac12, revid=0x04
	class=06-07-00, hdrtype=0x02, mfdev=1
	subordinatebus=0 	secondarybus=0
	intpin=b, irq=255
pci0: <PCI bus> on pcib0
chip1: <PCI to Other bridge (vendor=8086 device=1234)> at device 1.0 on pci0
pci0: <Chips & Technologies 65550 SVGA controller> (vendor=0x102c, dev=0x00e0) at 2.0
pcic-pci0: <TI PCI-1130 PCI-CardBus Bridge> at device 3.0 on pci0
pcic-pci0: TI113X PCI Config Reg: [CSC parallel isa irq]
pcic-pci0: Legacy address set to 0x3e0
PCI Config space:
00:  ac12104c 02000007 06070004 00820000
10:  00000000 02000000 00000000 00000000
20:  00000000 00000000 00000000 00000000
30:  00000000 00000000 00000000 03c001ff
40:  00000000 000003e1 00000000 00000000
50:  00000000 00000000 00000000 00000000
60:  00000000 00000000 00000000 00000000
70:  00000000 00000000 00000000 00000000
80:  00241020 00000000 00000000 00000000
90:  00721800 00000000 00000000 00000000
Cardbus Socket registers:
00:  f000ff53: f000ff53: f000e2c3: f000ff53:
10:  f000ff53: f000ff54: f00033a8: f000ff53:
ExCa registers:
00: 13 88 f5 5a 72 d0 80 e1 3f 74 c8 fa 66 8b 46 08
10: 52 66 0f b6 d9 66 31 d2 66 f7 f3 88 eb 88 d5 43
20: 30 d2 66 f7 f3 88 d7 5a 66 3d ff 03 00 00 fb 77
30: a2 86 c4 c0 c8 02 08 e8 40 91 88 fe 28 e0 8a 66
pcic-pci1: <TI PCI-1130 PCI-CardBus Bridge> at device 3.1 on pci0
pcic-pci1: TI113X PCI Config Reg: [CSC parallel isa irq]
PCI Config space:
00:  ac12104c 02000007 06070004 00820000
10:  00000000 02000000 00000000 00000000
20:  00000000 00000000 00000000 00000000
30:  00000000 00000000 00000000 03c002ff
40:  00000000 000003e1 00000000 00000000
50:  00000000 00000000 00000000 00000000
60:  00000000 00000000 00000000 00000000
70:  00000000 00000000 00000000 00000000
80:  00041020 00000000 00000000 00000000
90:  00721800 00000000 00000000 00000000
Cardbus Socket registers:
00:  f000ff53: f000ff53: f000e2c3: f000ff53:
10:  f000ff53: f000ff54: f00033a8: f000ff53:
ExCa registers:
00: 13 88 f5 5a 72 d0 80 e1 3f 74 c8 fa 66 8b 46 08
10: 52 66 0f b6 d9 66 31 d2 66 f7 f3 88 eb 88 d5 43
20: 30 d2 66 f7 f3 88 d7 5a 66 3d ff 03 00 00 fb 77
30: a2 86 c4 c0 c8 02 08 e8 40 91 88 fe 28 e0 8a 66
isa0: <ISA bus> on motherboard
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
fe0: not probed (disabled)
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0x0000
ata0: mask=03 status0=50 status1=00
ata0: mask=03 status0=50 status1=00
ata0: devices = 0x9
ata0 at port 0x1f0-0x1f7,0x3f6 irq 14 on isa0
ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0x0000
ata1: mask=00 status0=ff status1=ff
ata1: probe allocation failed
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
atkbd: the current kbd controller command byte 0047
atkbd: keyboard ID 0x41ab (2)
kbdc: RESET_KBD return code:00fa
kbdc: RESET_KBD status:00aa
kbd0: atkbd0, AT 101/102 (2), config:0x0, flags:0x3d0000
psm0: current command byte:0047
kbdc: TEST_AUX_PORT status:0000
kbdc: RESET_AUX return code:00fa
kbdc: RESET_AUX status:00aa
kbdc: RESET_AUX ID:0000
psm: status 00 02 64
psm: status 00 00 64
psm: status 00 03 64
psm: status 00 03 64
psm: data 08 00 00
psm: status d3 b7 88
psm: data 00 00 00
psm: status 00 02 64
psm0: <PS/2 Mouse> flags 0x900 irq 12 on atkbdc0
psm0: model GlidePoint, device ID 0-00, 2 buttons
psm0: config:00006900, flags:00000000, packet size:3
psm0: syncmask:00, 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
vga0: vga: WARNING: video mode switching is not fully supported on this adapter
VGA parameters upon power-up
50 18 10 00 00 01 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 07 80 9c 0e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 3f 38 39 3a 3b 3c 
3d 3e 07 0c 00 0f 00 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 00 01 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 07 80 9c 0e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 3f 38 39 3a 3b 3c 
3d 3e 07 0c 00 0f 00 00 00 00 00 00 10 0e 00 ff 
sc0: <System console> on isa0
sc0: VGA <16 virtual consoles, flags=0x200>
sc0: fb0, kbd0, terminal emulator: sc (syscons terminal)
pcic0: <VLSI 82C146> at port 0x3e0 iomem 0xd0000 irq 10 on isa0
pcic0: management irq 10
pccard0: <PC Card bus -- kludge version> on pcic0
pccard1: <PC Card bus -- kludge version> on pcic0
pcic1: not probed (disabled)
sio0: irq maps: 0x41 0x51 0x41 0x41
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1: irq maps: 0x41 0x49 0x41 0x41
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
sio2: not probed (disabled)
sio3: not probed (disabled)
ppc0: parallel port found at 0x378
ppc0: using extended I/O port range
ppc0: SPP
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
plip0: <PLIP network interface> on ppbus0
bpf: lp0 attached
ed0: not probed (disabled)
ie0: not probed (disabled)
le0: not probed (disabled)
lnc0: not probed (disabled)
cs0: not probed (disabled)
sn0: not probed (disabled)
sbc0: <Soundblaster 16> at port 0x220-0x22f irq 5 drq 1 flags 0x15 on isa0
sbc0: setting card to irq 5, drq 1, 5
pcm0: <SB DSP 4.13> on sbc0
pcm: setmap 6000, 2000; 0xc39b6000 -> 6000
pcm: setmap 8000, 2000; 0xc39b8000 -> 8000
pca0 at port 0x40 on isa0
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: gif0 attached
bpf: gif1 attached
bpf: gif2 attached
bpf: gif3 attached
bpf: lo0 attached
bpf: ppp0 attached
new masks: bio 684040, tty 6310ba, net 6710ba
bpf: sl0 attached
bpf: faith0 attached
ad0: <IBM-DTCA-24090/TC6OAB1A> ATA-3 disk at ata0 as master
ad0: 3909MB (8007552 sectors), 7944 cyls, 16 heads, 63 S/T, 512 B/S
ad0: 16 secs/int, 1 depth queue, BIOSPIO
ad0: piomode=4 dmamode=2 udmamode=2 cblid=0
Creating DISK ad0
Creating DISK wd0
ata0-slave: piomode=2 dmamode=-1 udmamode=-1 dmaflag=0
acd0: <TOSHIBA CD-ROM XM-1402B/1596> CDROM drive at ata0 as slave
acd0: read 1033KB/s (1033KB/s), 128KB buffer, BIOSPIO
acd0: Reads: CD-DA
acd0: Audio: play, 255 volume levels
acd0: Mechanism: ejectable tray
acd0: Medium: no/blank disc inside, unlocked
Mounting root from ufs:/dev/ad0s1a
ad0s1: type 0xa5, start 63, end = 8007551, size 8007489 : OK
start_init: trying /sbin/init


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?200008072319.QAA07452>