Hi all,
Semi-recently grabbed a snapshot of -CURRENT (from 03/06) to see if I could finally get my 3Com 3c575C Fast Etherlink XL cardbus lancard to work. I saw it mentioned in the HARDWARE.TXT so I decided to give it a go. What I didn't realize was that the newcard/cardbus was still in its early stages. So what I am experiencing now is that the card is properly detected (which doesn't happen with the card/pcic devices), _but_ when using it, I experience frequent timeouts and delays.
The xl driver spits out numerous "xl0: watchdog timeout", and I get pings around the one second mark, even to machines on the same switch. Trying to maintain TCP sessions without keeping a running ping in the background is futile, due to the packet loss.
So basically, I'm wondering what I can do to help getting this fixed? I very much want to see proper cardbus support (having to run windoze to get net connectivity is highly annoying and counter productive).
I don't have any means of running cvsup regularly (stuck behind heavy firewall), and I unfortunately have no experience with writing device drivers, but should otherwise be able to tweak code as instructed. I'll be happy to be a testbed for the 3c575C (and I'll be very happy when I can report that it seems to work flawlessly!).
Below I have included a dmesg, kernel conf, ifconfig, and a sample ping to my default gateway, which hopefully is of some help to someone.
Cheers,
/Johny
============ dmesg output ==============
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 5.0-20010306-CURRENT #0: Thu Mar 22 15:54:41 EST 2001
epaatts@dragon:/usr/src/sys/compile/DRAGON
Timecounter "i8254" frequency 1193182 Hz
Timecounter "TSC" frequency 648011290 Hz
CPU: Pentium III/Pentium III Xeon/Celeron (648.01-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0x683 Stepping = 3
Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory = 201326592 (196608K bytes)
config> di sn0
config> di lnc0
config> di le0
config> di ie0
config> di fe0
config> di ed0
config> di cs0
config> di bt0
config> di aic0
config> di aha0
config> di adv0
config> en apm0
config> ir apm0 0
config> f apm0 0x20
config> q
avail memory = 191627264 (187136K bytes)
Preloaded elf kernel "kernel" at 0xc03d8000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc03d809c.
WARNING: size of kinfo_proc (648) should be 644!!!
Pentium Pro MTRR support enabled
Using $PIR table, 7 entries at 0xc00fdf50
apm0: <APM BIOS> on motherboard
apm0: found APM BIOS v1.2, connected at v1.2
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Intel 82443BX (440 BX) host to PCI bridge> at pcibus 0 on motherboard
pci0: <PCI bus> on pcib0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <display, VGA> at 0.0 (no driver attached)
pccbb0: <TI1225 PCI-CardBus Bridge> at device 4.0 on pci0
pccbb0: PCI Memory allocated: 44000000
pci_cfgintr_unique: hard-routed to irq 10
pci_cfgintr: 0:4 INTA routed to irq 10
cardbus0: <Cardbus bus (newcard)> on pccbb0
pccard0: <16-bit PCCard bus> on pccbb0
pccbb1: <TI1225 PCI-CardBus Bridge> at device 4.1 on pci0
pccbb1: PCI Memory allocated: 44001000
pci_cfgintr_unique: hard-routed to irq 10
pci_cfgintr: 0:4 INTB routed to irq 10
cardbus1: <Cardbus bus (newcard)> on pccbb1
pccard1: <16-bit PCCard bus> on pccbb1
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 ATA33 controller> port 0xfcf0-0xfcff at device 7.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
pci0: <serial bus, USB> at 7.2 (no driver attached)
pci0: <bridge, PCI-unknown> at 7.3 (no driver attached)
pcm0: <ESS Technology Maestro-2E> port 0xf800-0xf8ff irq 10 at device 8.0 on pci0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
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
pmtimer0 on isa0
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/7 bytes threshold
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1: configured irq 3 not in bitmap of probed irqs 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
unknown: <PNP0303> can't assign resources
unknown: <PNP0501> can't assign resources
unknown: <PNP0401> can't assign resources
unknown: <PNP0f13> can't assign resources
unknown: <PNP0700> can't assign resources
IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to deny, logging disabled
IPsec: Initialized Security Association Processing.
ad0: 11513MB <IBM-DARA-212000> [23392/16/63] at ata0-master UDMA33
Mounting root from ufs:/dev/ad0s3a
pccbb0: card inserted: event=0x00000000, state=30000410
pccard0: chip_socket_enable
pccbb_pcic_socket_enable:
pccbb0: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44]
pccbb0: pccbb_power: CARD_VCC_5V and CARD_VPP_VCC [15]
pccbb0: pccbb_pcic_wait_ready: status 0x7f
pccbb0: card type is mem
pccard0: read_cis
pccbb_pcic_mem_map window 0 bus 44002000+400+bbffe000 card addr 0
pccbb_pcic_do_mem_map window 0: 8002 8002 3ffe 44 (44002000+00000400.00001000*bbffe000)
pccbb_pcic_do_mem_map window 0: 8002 8002 7ffe 44 (44002000+00000400.00001000*bbffe000)
cis mem map d2e65000
pccard0: CIS tuple chain:
CISTPL_DEVICE type=null speed=null
01 02 00 ff
CISTPL_DEVICE_A type=null speed=null
17 02 00 ff
CISTPL_VERS_1
15 39 05 00 58 69 72 63 6f 6d 00 43 72 65 64 69
74 43 61 72 64 20 4d 6f 64 65 6d 20 35 36 20 2d
20 47 6c 6f 62 61 6c 41 43 43 45 53 53 00 43 4d
2d 35 36 47 00 31 2e 30 30 00 ff
unhandled CISTPL 88
88 08 d7 8b 05 00 00 00 00 00
CISTPL_MANFID
20 05 05 01 0a 10 45
unhandled CISTPL 44
44 04 f6 6c 1e 27
CISTPL_CONFIG
1a 05 01 3f 80 ff 67
CISTPL_CFTABLE_ENTRY
1b 14 e7 c1 9d 0f 55 4d 5d 26 e0 17 17 ea 60 e8
02 07 f0 bc 8e 20
CISTPL_CFTABLE_ENTRY
1b 07 1f 08 ea 60 e8 03 07
CISTPL_CFTABLE_ENTRY
1b 07 17 08 ea 60 f8 02 07
CISTPL_CFTABLE_ENTRY
1b 07 0f 08 ea 60 f8 03 07
CISTPL_CFTABLE_ENTRY
1b 03 3f 08 63
CISTPL_FUNCID
21 02 02 00
unhandled CISTPL 22
22 04 00 02 0f 5c
unhandled CISTPL 22
22 0c 02 06 00 3f 1c 03 03 0f 07 00 01 b5
unhandled CISTPL 22
22 08 13 06 00 00 00 00 00 00
unhandled CISTPL 8a
8a 0c 39 41 30 30 44 42 30 35 38 42 44 37
CISTPL_NO_LINK
14 00
CISTPL_END
ff
pccard0: check_cis_quirks
pccard0: CIS version PC Card Standard 5.0
pccard0: CIS info: Xircom, CreditCard Modem 56 - GlobalACCESS, CM-56G, 1.00
pccard0: Manufacturer code 0x105, product 0x100a
pccard0: function 0: serial port, ccr addr ff80 mask 67
pccard0: function 0, config table entry 39: I/O card; irq mask 8ebc; iomask a, iospace 2e8-2ef; powerdown
pccard0: function 0, config table entry 31: I/O card; irq mask 8ebc; iomask a, iospace 3e8-3ef; io8 io16 powerdown
pccard0: function 0, config table entry 23: I/O card; irq mask 8ebc; iomask a, iospace 2f8-2ff; io8 io16 powerdown
pccard0: function 0, config table entry 15: I/O card; irq mask 8ebc; iomask a, iospace 3f8-3ff; io8 io16 powerdown
pccard0: function 0, config table entry 63: I/O card; irq mask 8ebc; iomask 3, iospace 0-7; io8 io16 powerdown
pccard0: functions scanning
pccbb_pcic_socket_enable:
pccbb0: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44]
pccbb0: pccbb_power: CARD_VCC_5V and CARD_VPP_VCC [15]
pccbb0: pccbb_pcic_wait_ready: status 0x7f
pccbb0: card type is io
pccard0: ++enabled_count = 1
pccbb_pcic_mem_map window 0 bus 44002000+400+bbffe000 card addr 0
pccbb_pcic_do_mem_map window 0: 8002 8002 3ffe 44 (44002000+00000400.00001000*bbffe000)
pccard0: ccr_res == 44002000-440023ff, base=ff80
pccbb_pcic_do_mem_map window 0: 8002 8002 7ffe 44 (44002000+00000400.00001000*bbffe000)
pccbb_pcic_do_mem_map window 0: 8002 8003 400d 44 (44002000+00000400.00002000*bc00d000)
pccard0: function 0 CCR at 0 offset f80: 67 20 0 0, 0 0 ff ff, ff
pccbb1: card inserted: event=0x00000000, state=30000b20
pccbb1: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44]
pccbb1: pccbb_power: CARD_VCC_3V and CARD_VPP_VCC [11]
pccbb1: bad Vcc request. ctrl=0x33, status=0x30000b20
pccbb_power: CARD_VCC_3V and CARD_VPP_VCC [11]
TUPLE: LINKTARGET [3]: 43 49 53
Manufacturer ID: 01015752
TUPLE: CONFIG_CB [6]: 03 01 00 00 00 00
TUPLE: CFTABLE_ENTRY_CB [13]: 41 9a 01 b5 1e 01 b5 1e 02 30 ff ff 01
cardbus1: Opening BAR: type=IO, bar=10, len=0040
Product version: 5.0
Product name: 3Com Corporation | 3CCFE575CT | LAN Cardbus Card | 004 |
Functions: Network Adaptor, Memory
CIS reading done
xl0: <3Com 3c575C Fast Etherlink XL> port 0x3000-0x307f mem 0x44020000-0x4403ffff,0x44002480-0x440024ff,0x44002400-0x4400247f irq 10 at device 0.0 on cardbus1
xl0: chip is in D6 power mode -- setting to D0
xl0: Ethernet address: 00:00:86:55:62:4e
miibus0: <MII bus> on xl0
ukphy0: <Generic IEEE 802.3u media interface> on miibus0
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
xl0: watchdog timeout
xl0: watchdog timeout
xl0: watchdog timeout
xl0: watchdog timeout
xl0: watchdog timeout
xl0: watchdog timeout
xl0: watchdog timeout
....ad infinitum
============ kernel config ==============
machine i386
cpu I586_CPU
cpu I686_CPU
ident DRAGON
maxusers 32
#To statically compile in device wiring instead of /boot/device.hints
#hints "GENERIC.hints" #Default places to look for devices.
options INET #InterNETworking
#options INET6 #IPv6 communications protocols
options IPSEC
options IPSEC_ESP
options IPFIREWALL
options IPDIVERT
options IPSTEALTH
options TCP_DROP_SYNFIN
options TCP_RESTRICT_RST
options NMBCLUSTERS="32768"
options FFS #Berkeley Fast Filesystem
options SOFTUPDATES #Enable FFS soft updates support
options NFS #Network Filesystem
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options DEVFS #Device Filesystem
options PROCFS #Process filesystem
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI
options UCONSOLE #Allow users to grab the console
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options KTRACE #ktrace(1) support
options SYSVSHM #SYSV-style shared memory
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options P1003_1B #Posix P1003_1B real-time extensions
options _KPOSIX_PRIORITY_SCHEDULING
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
options SC_HISTORY_SIZE=1000
device isa
device pci
# Floppy drives
device fdc
# ATA and ATAPI devices
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
device atapifd # ATAPI floppy drives
options ATA_STATIC_ID #Static device numbering
options ATA_ENABLE_ATAPI_DMA #Enable DMA on ATAPI devices
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc 1 # At keyboard controller
device atkbd # at keyboard
device psm # psm mouse
device vga # VGA screen
# splash screen/screen saver
device splash
# syscons is the default console driver, resembling an SCO console
device sc 1
# Floating point support - do not disable.
device npx
# Power management support (see NOTES for more options)
device apm
# Add suspend/resume support for the i8254.
device pmtimer
# Audio support
device pcm
# PCCARD (PCMCIA) support
#device card # pccard bus
#device pcic # PCMCIA bridge
device pccard
device cardbus
device pccbb
# Serial (COM) ports
device sio # 8250, 16[45]50 based serial ports
# Parallel port
device ppc
device ppbus # Parallel port bus (required)
device lpt # Printer
device plip # TCP/IP over parallel
device ppi # Parallel port interface device
#device vpo # Requires scbus and da
# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device miibus # MII bus support
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
# Pseudo devices - the number indicates how many units to allocated.
device random # Entropy device
device loop # Network loopback
device ether # Ethernet support
device tun # Packet tunnel.
device pty # Pseudo-ttys (telnet etc)
device speaker
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
device bpf 8 # Berkeley packet filter
============ ifconfig output ==============
xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 203.94.128.71 netmask 0xffffffc0 broadcast 203.94.128.127
ether 00:00:86:55:62:4e
media: autoselect (100baseTX <full-duplex>) status: active
supported media: autoselect 100baseTX <full-duplex> 100baseTX 10baseT/UTP <full-duplex> 10baseT/UTP none
Note: tested lowering the media setting, but same effect regardless
============ sample pings ==============
PING 203.94.128.65 (203.94.128.65): 56 data bytes
64 bytes from 203.94.128.65: icmp_seq=0 ttl=64 time=1.589 ms
64 bytes from 203.94.128.65: icmp_seq=1 ttl=64 time=0.268 ms
64 bytes from 203.94.128.65: icmp_seq=2 ttl=64 time=1010.059 ms
64 bytes from 203.94.128.65: icmp_seq=3 ttl=64 time=0.320 ms
64 bytes from 203.94.128.65: icmp_seq=4 ttl=64 time=1010.056 ms
64 bytes from 203.94.128.65: icmp_seq=5 ttl=64 time=140.041 ms
64 bytes from 203.94.128.65: icmp_seq=6 ttl=64 time=0.286 ms
64 bytes from 203.94.128.65: icmp_seq=7 ttl=64 time=1010.049 ms
64 bytes from 203.94.128.65: icmp_seq=8 ttl=64 time=1010.045 ms
64 bytes from 203.94.128.65: icmp_seq=9 ttl=64 time=1010.048 ms
64 bytes from 203.94.128.65: icmp_seq=10 ttl=64 time=1010.045 ms
64 bytes from 203.94.128.65: icmp_seq=11 ttl=64 time=280.039 ms
64 bytes from 203.94.128.65: icmp_seq=12 ttl=64 time=1010.048 ms
64 bytes from 203.94.128.65: icmp_seq=13 ttl=64 time=1010.053 ms
64 bytes from 203.94.128.65: icmp_seq=14 ttl=64 time=1010.045 ms
64 bytes from 203.94.128.65: icmp_seq=15 ttl=64 time=1010.044 ms
64 bytes from 203.94.128.65: icmp_seq=16 ttl=64 time=1010.045 ms
64 bytes from 203.94.128.65: icmp_seq=17 ttl=64 time=1010.044 ms
64 bytes from 203.94.128.65: icmp_seq=18 ttl=64 time=1010.046 ms
--- 203.94.128.65 ping statistics ---
20 packets transmitted, 19 packets received, 5% packet loss
round-trip min/avg/max/stddev = 0.268/713.325/1010.059/440.860 ms