Re: [Fwd: Kernel 2.4 problem with 3C905B NIC]
Luis Miguel Cruz Miranda <[email protected]>
| Newsgroups | gmane.linux.drivers.vortex.devel |
|---|---|
| Message-ID | <[email protected]> |
Same problem here. I will do some diagnostics today. At 01:03 04/07/2003 +0100, Edward Tandi wrote: >Hello, > >I am currently having problems with the 3c59x driver and I was told that >someone at this address (Bogdan?) could help. > >Following instructions from Documentation/networking/vortex.txt, I have >generated the relevant diagnostics. I have also forwarded the original >e-mail I sent onto the kernel mailing list (right at the end). > >It would appear that the 3c59x driver is unable to auto-negotiate with >this card/hub combination (see "*** Link Jabber! ***" below). For >reference, the D-Link hub to which the NIC is attached is model DFE-808. > >As mentioned, I have tried to set options to force the card into various >modes, but it has not worked. > >I have the 3c90x driver working but I would like to see the 3c59x driver >working because it comes in the standard Linux kernel distribution. I'm >not the only one with this configuration. So the main aim of this e-mail >is to debug and help fix this problem. Let me know if more info is >required. Thanks, > >Ed-T. > > >Diagnostics: >------------ > >$ lspci -vx >00:0b.0 Ethernet controller: 3Com Corporation 3c905B 100BaseTX [Cyclone] >(rev 30) > Subsystem: 3Com Corporation 3C905B Fast Etherlink XL 10/100 > Flags: bus master, medium devsel, latency 32, IRQ 9 > I/O ports at d800 [size=128] > Memory at e4800000 (32-bit, non-prefetchable) [size=128] > Expansion ROM at <unassigned> [disabled] [size=128K] > Capabilities: [dc] Power Management version 1 >00: b7 10 55 90 17 00 10 02 30 00 00 02 08 20 00 00 >10: 01 d8 00 00 00 00 80 e4 00 00 00 00 00 00 00 00 >20: 00 00 00 00 00 00 00 00 00 00 00 00 b7 10 55 90 >30: 00 00 00 00 dc 00 00 00 00 00 00 00 09 01 0a 0a > > > >Card working OK (3c90x driver): >------------------------------- > >$ vortex-diag -aaee >vortex-diag.c:v2.14 12/28/2002 Donald Becker ([email protected]) >http://www.scyld.com/diag/index.html >Index #1: Found a 3c905B Cyclone 100baseTx adapter at 0xd800. >Station address 00:50:04:0b:1d:ec. > Receive mode is 0x15: Normal unicast and hashed multicast. >The Vortex chip may be active, so FIFO registers will not be read. >To see all register values use the '-f' flag. >Initial window 4, registers values by window: > Window 0: 0000 0000 0000 0000 f5f5 00bf 0000 0000. > Window 1: FIFO FIFO 0000 0000 0000 0000 0000 2000. > Window 2: 5000 0b04 ec1d 0000 0000 0000 000a 4000. > Window 3: 0000 0080 05ea 0000 000a 0800 0800 6000. > Window 4: 0000 0000 0000 0cd8 0002 88c0 0000 8000. > Window 5: 1ffc 0000 0000 1ffc 0815 06ee 06ee 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 0xd800 > 0xD810: **FIFO** 00000000 00000000 *STATUS* > 0xD820: 00000100 2aa29c20 00080000 00000804 > 0xD830: 00000000 e968ffdb 2aa28400 00080804 > 0xD840: 00374d5d 00000000 00000000 00000000 > 0xD850: 00000000 00000000 00000000 00000000 > 0xD860: 00000000 00000000 00000000 00000000 > 0xD870: 00001000 00000000 00000160 00000000 > DMA control register is 00000100. > Tx list starts at 2aa29c20. > Tx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to >empty. > Rx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to >full. > Poll period Tx 2560 ns., Rx 256 ns. > Maximum burst recorded Tx 352, Rx 0. >Indication enable is 06ee, interrupt enable is 06ee. >No interrupt sources are pending. >Transceiver/media interfaces available: 100baseTx 10baseT. >Transceiver type in use: Autonegotiate. >MAC settings: half-duplex. >Station address set to 00:50:04:0b:1d:ec. >Configuration options 000a. >EEPROM format 64x16, configuration table at offset 0: > 00: 0050 040b 1dec 9055 c594 0036 4a54 6d50 > 0x08: 2971 0000 0050 040b 1dec 8020 0000 0022 > 0x10: 32a2 0000 0000 0180 0000 0004 0000 10b7 > 0x18: 9055 000a 0000 0000 0000 0000 0000 0000 > 0x20: 0026 0000 0000 0000 0000 0000 0000 0000 > 0x28: 0000 0000 0000 0000 0000 0000 0000 0000 > ... > >The word-wide EEPROM checksum is 0xd166. >Saved EEPROM settings of a 3Com Vortex/Boomerang: >3Com Node Address 00:50:04:0B:1D:EC (used as a unique ID only). >OEM Station address 00:50:04:0B:1D:EC (used as the ethernet address). > Device ID 9055, Manufacturer ID 6d50. > Manufacture date (MM/DD/YYYY) 12/20/1998, division 6, product TJ. > No BIOS ROM is present. >Transceiver selection: Autonegotiate. > Options: force full duplex, link beat required. >PCI Subsystem IDs: Vendor 10b7 Device 9055. >100baseTx 10baseT. > Vortex format checksum is incorrect (4e vs. 10b7). > Cyclone format checksum is correct (0x26 vs. 0x26). > Hurricane format checksum is correct (0x26 vs. 0x26). > > >$ mii-diag -v >mii-diag.c:v2.07 11/15/2002 Donald Becker ([email protected]) >http://www.scyld.com/diag/index.html >Using the default interface 'eth0'. > Using the old SIOCGMIIPHY value on PHY 3072 (BMCR 0x3100). >Basic mode control register 0x3100: Auto-negotiation enabled. >You have link beat, and everything is working OK. > This transceiver is capable of 100baseTx-FD 100baseTx 10baseT-FD >10baseT. > Able to perform Auto-negotiation, negotiation complete. >Your link partner is generating 100baseTx link beat (no >autonegotiation). > End of basic transceiver information. > >libmii.c:v2.10 4/22/2003 Donald Becker ([email protected]) >http://www.scyld.com/diag/index.html >MII PHY #3072 transceiver registers: > 3100 786d 0000 0000 05e1 0080 0004 2001 > 0000 0000 0000 0000 0000 0000 0000 0000 > 8000 0008 0090 0000 0000 0005 2001 0000 > 0000 2041 0044 1c11 0002 1000 0000 0000. >Basic mode control register 0x3100: Auto-negotiation enabled. >Basic mode status register 0x786d ... 786d. > Link status: established. > Capable of 100baseTx-FD 100baseTx 10baseT-FD 10baseT. > Able to perform Auto-negotiation, negotiation complete. >This transceiver has no vendor identification. >I'm advertising 05e1: Flow-control 100baseTx-FD 100baseTx 10baseT-FD >10baseT > Advertising no additional info pages. > IEEE 802.3 CSMA/CD protocol. >Link partner capability is 0080: 100baseTx. > Negotiation did not complete. > > > >Card NOT working OK (3c59x driver): >----------------------------------- > > >From dmesg (debug=7): >PCI: Found IRQ 9 for device 00:0b.0 >3c59x: Donald Becker and others. www.scyld.com/network/vortex.html >See Documentation/networking/vortex.txt >00:0b.0: 3Com PCI 3c905B Cyclone 100baseTx at 0xd800. Vers LK1.1.16 > 00:50:04:0b:1d:ec, IRQ 9 > product code 544a rev 00.12 date 12-20-98 >Full duplex capable > Internal config register is 1000000, transceivers 0xa. > 8K byte-wide RAM 5:3 Rx:Tx split, autoselect/10baseT interface. > Enabling bus-master transmits and whole-frame receives. >00:0b.0: scatter/gather enabled. h/w checksums enabled >eth0: Filling in the Rx ring. >eth0: using NWAY device table, not 0 >eth0: Initial media type Autonegotiate. >vortex_up(): writing 0x1800000 to InternalConfig >eth0: MII #0 status 0787, link partner capability 0787, info1 8020, >setting full-duplex. >eth0: vortex_up() InternalConfig 01800000. >eth0: vortex_up() irq 9 media status 8080. >boomerang_interrupt. status=0x8081 >eth0: interrupt, status 8081, latency 7 ticks. >eth0: In interrupt loop, status 8081. >eth0: vortex_error(), status=0x8081 >eth0: Updating stats. >eth0: exiting interrupt, status 8000. >eth0: Media selection timer tick happened, Autonegotiate. >dev->watchdog_timeo=500 >eth0: MII transceiver has status 0787. >eth0: Media selection timer finished, Autonegotiate. >boomerang_interrupt. status=0x8401 >eth0: interrupt, status 8401, latency 8 ticks. >eth0: In interrupt loop, status 8401. >boomerang_interrupt->boomerang_rx >boomerang_rx(): status 8001 >Receiving packet size 261 status a0008105. >eth0: exiting interrupt, status 8000. >boomerang_interrupt. status=0x8401 >eth0: interrupt, status 8401, latency 3 ticks. > >$ vortex-diag -aaee >vortex-diag.c:v2.14 12/28/2002 Donald Becker ([email protected]) > http://www.scyld.com/diag/index.html >Index #1: Found a 3c905B Cyclone 100baseTx adapter at 0xd800. > Station address 00:50:04:0b:1d:ec. > Receive mode is 0x05: Normal unicast. >The Vortex chip may be active, so FIFO registers will not be read. >To see all register values use the '-f' flag. >Initial window 4, registers values by window: > Window 0: 0000 0000 0000 0000 f5f5 00bf 0000 0000. > Window 1: FIFO FIFO 0000 0000 0000 0000 0000 2000. > Window 2: 5000 0b04 ec1d 0000 0000 0000 000a 4000. > Window 3: 0000 0180 05ea 0020 000a 0800 0800 6000. > Window 4: 0000 0000 8000 0cd8 0003 8880 0000 8000. > Window 5: 1ffc 0000 0000 0600 0805 06ce 06c6 a000. > Window 6: 0000 0000 0000 2e00 0000 26ae 0000 c000. > Window 7: 0000 0000 0000 0000 0000 0000 0000 e000. >Vortex chip registers at 0xd800 > 0xD810: **FIFO** 00000000 00000000 *STATUS* > 0xD820: 00000020 00000000 00080000 00000004 > 0xD830: 00000000 81707e90 376930e0 00080004 > 0xD840: 0023e989 00000000 00000000 00000000 > 0xD850: 00000000 00000000 00000000 00000000 > 0xD860: 00000000 00000000 00000000 00000000 > 0xD870: 00009000 00000000 00000000 00000000 > DMA control register is 00000020. > Tx list starts at 00000000. > Tx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to >empty. > Rx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to >full. > Poll period Tx 00 ns., Rx 0 ns. > Maximum burst recorded Tx 0, Rx 0. > Indication enable is 06c6, interrupt enable is 06ce. > No interrupt sources are pending. > Transceiver/media interfaces available: 100baseTx 10baseT. >Transceiver type in use: Autonegotiate. > MAC settings: full-duplex. > Station address set to 00:50:04:0b:1d:ec. > Configuration options 000a. >EEPROM format 64x16, configuration table at offset 0: > 00: 0050 040b 1dec 9055 c594 0036 4a54 6d50 > 0x08: 2971 0000 0050 040b 1dec 8020 0000 0022 > 0x10: 32a2 0000 0000 0180 0000 0004 0000 10b7 > 0x18: 9055 000a 0000 0000 0000 0000 0000 0000 > 0x20: 0026 0000 0000 0000 0000 0000 0000 0000 > 0x28: 0000 0000 0000 0000 0000 0000 0000 0000 > ... > > The word-wide EEPROM checksum is 0xd166. >Saved EEPROM settings of a 3Com Vortex/Boomerang: > 3Com Node Address 00:50:04:0B:1D:EC (used as a unique ID only). > OEM Station address 00:50:04:0B:1D:EC (used as the ethernet address). > Device ID 9055, Manufacturer ID 6d50. > Manufacture date (MM/DD/YYYY) 12/20/1998, division 6, product TJ. > No BIOS ROM is present. > Transceiver selection: Autonegotiate. > Options: force full duplex, link beat required. > PCI Subsystem IDs: Vendor 10b7 Device 9055. > 100baseTx 10baseT. > Vortex format checksum is incorrect (4e vs. 10b7). > Cyclone format checksum is correct (0x26 vs. 0x26). > Hurricane format checksum is correct (0x26 vs. 0x26). > >$ mii-diag -v >mii-diag.c:v2.07 11/15/2002 Donald Becker ([email protected]) > http://www.scyld.com/diag/index.html > Using the new SIOCGMIIPHY value on PHY 0 (BMCR 0x0787). > Basic mode control register 0x0787: Auto-negotiation disabled, with > Speed fixed at 10 mbps, full-duplex. > Internal Collision-Test enabled! > Restarted auto-negotiation in progress! > Transceiver isolated from the MII! > Basic mode status register 0x0787 ... 0787. > Link status: established. > This transceiver is capable of <Warning! No media capabilities>. > Unable to perform Auto-negotiation, negotiation not complete. > *** Link Jabber! *** > Your link partner is generating 100baseTx link beat (no >autonegotiation). > End of basic transceiver information. > > >libmii.c:v2.10 4/22/2003 Donald Becker ([email protected]) > http://www.scyld.com/diag/index.html > MII PHY #0 transceiver registers: > 0787 0787 0787 0787 0787 0787 0787 0787 > 0787 0787 0787 0787 0787 0787 0787 0787 > 0787 0787 0787 0787 0787 0787 0787 0787 > 0787 0787 0787 0787 0787 0787 0787 0787. > Basic mode control register 0x0787: Auto-negotiation disabled! > Speed fixed at 10 mbps, full-duplex. > Transceiver isolated from the MII! > Restarted auto-negotiation in progress! > Internal Collision-Test enabled! > Basic mode status register 0x0787 ... 0787. > Link status: established. > Capable of <Warning! No media capabilities>. > Unable to perform Auto-negotiation, negotiation not complete. > *** Link Jabber! *** > This transceiver has no vendor identification. > I'm advertising 0787: Flow-control 100baseT4 100baseTx-FD 100baseTx > Advertising no additional info pages. > Using an unknown (non 802.3) encapsulation. > Link partner capability is 0787: Flow-control 100baseT4 100baseTx-FD >100baseTx. > Negotiation did not complete. > > > >--------Forwarded Message-------- >From: Edward Tandi <[email protected]> >To: Kernel mailing list <[email protected]> >Subject: Kernel 2.4 problem with 3C905B NIC >Date: 03 Jul 2003 19:24:36 +0100 > >I am currently using kernels 2.4.21-rc1 and 2.4.22-pre2. > >I think there is a problem with the 3c59x module. Between two machines >lies a D-Link 100Base-TX Fast Ethernet Hub and a Netgear DS104 switch. I >think the D-Link has only half-duplex capability. > >NICs at both ends initialise in 100Mbit mode. > >What happens is that during large transfers, there are a very large >number of collisions on the network. This results in the transfer rate >slowing down to somewhere between 3KB-7KB per second. > >Googling shows that there have been a number of problems in the past >regarding Linux and the 3C905B. History indicates that card appears to >work on Windows machines but have serious performance problems under >Linux in certain circumstances. > >I have tried the various duplex module options and nothing helps. In >fact long transfers appear to trigger a Tulip lockup at the other end. > >For those suffering, I have found a temporary work-around. Build the >driver (3c90x-102.tar.gz) at: > >http://support.3com.com/infodeli/tools/nic/linuxdownload.htm > >Despite all the compilation warnings, all works well! Transfer speeds >have increased to between 7MB-9MB per second, which is what I would >expect it to be. > >The 3com site says that the driver is unsupported. Pity. Is there a >maintainer for the 3c59x module? The last entry in 3c59x.c was by akpm >July 2001. I presume this issues has been around for a while. > >Ed-T. > >- >To unsubscribe from this list: send the line "unsubscribe linux-kernel" in >the body of a message to [email protected] >More majordomo info at http://vger.kernel.org/majordomo-info.html >Please read the FAQ at http://www.tux.org/lkml/ > >_______________________________________________ >vortex mailing list >[email protected] >http://www.scyld.com/mailman/listinfo/vortex Luis Miguel Cruz Miranda. | B2B INTEGRAL, S.A. CCNA - Systems Administrator | Pol. Ind. de Asipo | C/A - Parcela 86-C Tel: +34 902 506 605 | 33.428 - CAYES - LLANERA Fax:+34 985 980 794 | ASTURIAS (ESPAÑA/SPAIN) AVISO SOBRE CONFIDENCIALIDAD: Este mensaje y en su caso, sus anexos, se dirige exclusivamente a su destinatario, por poder contener información confidencial sometida a secreto profesional o cuya divulgación esté prohibida en virtud de la legislación vigente, se informa a quién lo recibiera sin ser el destinatario o persona autorizada por éste, que la información contenida en el mismo es reservada y su utilización o divulgación con cualquier fin está prohibida. Si ha recibido este documento por error, le rogamos que nos lo comunique a la mayor brevedad posible y proceda a su destrucción. _______________________________________________ vortex mailing list [email protected] http://www.scyld.com/mailman/listinfo/vortex