When compiled into the kernel or used as a module, the driver can't auto-negotiate or be forced into full duplex. Environment is D-Link DES-1005D "mini-switch" 100baseTX. If i boot into windows (which detects full duplex) and then back into linux it will use full duplex. The eeprom is programmed to use 100baseTX-FD with the help of 3Com's setup utility. mii-diag output does not look as it should. See diagnostics below... dmesg: 3c59x: Donald Becker and others. www.scyld.com/network/vortex.html See Documentation/networking/vortex.txt 00:0b.0: 3Com PCI 3c905C Tornado at 0xe000. Vers LK1.1.16 00:02:1e:f2:61:21, IRQ 11 product code 464a rev 00.13 date 11-13-00 Full duplex capable Internal config register is 2400000, transceivers 0xa. 8K byte-wide RAM 5:3 Rx:Tx split, 100baseTX interface. Enabling bus-master transmits and whole-frame receives. 00:0b.0: scatter/gather enabled. h/w checksums enabled lspci -vx: 00:0b.0 Ethernet controller: 3Com Corporation 3c905C-TX [Fast Etherlink] (rev 74) Subsystem: 3Com Corporation 3C905C-TX Fast Etherlink for PC Management NIC Flags: bus master, medium devsel, latency 32, IRQ 11 I/O ports at e000 [size=128] Memory at df000000 (32-bit, non-prefetchable) [size=128] Expansion ROM at <unassigned> [disabled] [size=128K] Capabilities: [dc] Power Management version 2 00: b7 10 00 92 07 00 10 02 74 00 00 02 08 20 00 00 10: 01 e0 00 00 00 00 00 df 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 b7 10 00 10 30: 00 00 00 00 dc 00 00 00 00 00 00 00 0b 01 0a 0a mii-diag -v: mii-diag.c:v2.03 11/5/2001 Donald Becker (becker@scyld.com) http://www.scyld.com/diag/index.html Using the default interface 'eth0'. Basic mode control register 0x0000: Auto-negotiation disabled, with Speed fixed at 10 mbps, half-duplex. Basic mode status register 0x0000 ... 0000. Link status: not established. This transceiver is capable of <Warning! No media capabilities>. Unable to perform Auto-negotiation, negotiation not complete. Link partner information is not exchanged when in fixed speed mode. End of basic transceiver information. MII PHY #0 transceiver registers: 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 vortex-diag -aaeef: vortex-diag.c:v2.05 5/15/2001 Donald Becker (becker@scyld.com) http://www.scyld.com/diag/index.html Index #1: Found a 3c905C Tornado 100baseTx adapter at 0xe000. Initial window 7, registers values by window: Window 0: 0000 0000 0000 0000 0000 00bf ffff 0000. Window 1: 6300 0026 0700 0000 0000 007f 0000 2000. Window 2: 0200 f21e 2161 0000 0000 0000 0052 4000. Window 3: 0000 0240 05ea 0020 000a 0800 0800 6000. Window 4: 0000 0000 0000 0cfa 0001 8880 0000 8000. Window 5: 1ffc 0000 0000 0600 0807 06ce 06c6 a000. Window 6: 0000 0000 0000 0000 0000 0000 0000 c000. Window 7: 0000 0000 0000 0000 0000 0000 0000 e000. Vortex chip registers at 0xe000 0xE010: 00000000 00000000 0000000a 00000000 0xE020: 00000020 00000000 00080000 00000004 0xE030: 00000000 0f99f067 0e0150f0 00080004 Indication enable is 06c6, interrupt enable is 06ce. No interrupt sources are pending. Transceiver/media interfaces available: 100baseTx 10baseT. Transceiver type in use: 100baseTX. MAC settings: full-duplex. Station address set to 00:02:1e:f2:61:21. Configuration options 0052. EEPROM contents (64 words, offset 0): 0x000: 1a51 53a1 236c 9200 016d 0048 4a46 6d50 0x008: 2940 0800 0002 1ef2 6121 8020 0000 00aa 0x010: 72a2 0000 0000 0240 0000 0005 0429 10b7 0x018: 1000 000a 0002 6300 ffb7 b7b7 0000 0000 0x020: 009a 1234 5600 0000 0000 0000 0000 0000 0x028: 0000 0000 0000 0000 0000 0000 0000 0000 0x030: ffff ffff ffff ffff ffff ffff ffff ffff 0x038: ffff ffff ffff ffff ffff ffff ffff ffff The word-wide EEPROM checksum is 0x2bc7. Saved EEPROM settings of a 3Com Vortex/Boomerang: 3Com Node Address 1A:51:53:A1:23:6C (used as a unique ID only). OEM Station address 00:02:1E:F2:61:21 (used as the ethernet address). Manufacture date (MM/DD/YYYY) 11/13/2000, division H, product FJ. Options: force full duplex, link beat required. Vortex format checksum is incorrect (0023 vs. 10b7). Cyclone format checksum is incorrect (0xb3 vs. 0x9a). Hurricane format checksum is correct (0x9a vs. 0x9a). mii-tool -v: eth0: 10 Mbit, half duplex, no link product info: vendor 00:00:00, model 0 rev 0 basic mode: 10 Mbit, half duplex basic status: no link capabilities: advertising: -- Magnus Sjögren <magnus.sjogren@telia.com> - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html