3c575 bug w/ full duplex mode

Christoph Moar christoph.moar@alpin.it
Tue Mar 28 02:58:31 2000


Hello all,
I recently contacted Mr. Becker regarding a problem I seem to be
having with two 3c575 cards connected on 3com officeconnect
equipment. I did non knew this mailing group, so the first contact
was directly with Donald. I will sum up the infos from the first
mail to give everybody an idea of what is going on.

I have two 3c575 cards, specifically model number 3CXFE575BT
(the ones with xjack connector) and I verified both cards with
the dos diagnose program to have the exactly same settings
(irq, memory i/o, autosense capability etc.).

If I use them on a toshiba satellite pro 4200 in Win NT mode,
both of them cards go into full duplex mode with my switching
equipment.

If I try to do the same with linux (red hat 6.1, linux kernel
2.2.15-2.5.0, pcmcia-cs-3.1.13 self compiled) one of the two
cards goes into full duplex mode, the other does half duplex.

This is an excerpt of the message log file after inserting
the two cards:

[this is an excerpt from the card that does full duplex]
eth0: 3Com 3CCFE575 Cyclone CardBus at 0x200,  00:00:86:38:db:58, IRQ 11
    8K byte-wide RAM 5:3 Rx:Tx split, MII interface.
    MII transceiver found at address 0, status 7809.
    Enabling bus-master transmits and whole-frame receives.
..
eth0: MII #0 status 7809, link partner capability 0000, setting half-duplex.
eth0: MII #0 status 7829, link partner capability 45e1, setting full-duplex.
eth0: MII #0 status 782d, link partner capability 45e1, setting full-duplex.
[and the card finally is in full duplex mode]

________________

[this is an excerpt from the card that does only half duplex]
eth0: 3Com 3CCFE575 Cyclone CardBus at 0x200,  00:00:86:3f:cf:07, IRQ 11
   8K byte-wide RAM 5:3 Rx:Tx split, MII interface.
   MII transceiver found at address 0, status 2809.
   Enabling bus-master transmits and whole-frame receives.
..
eth0: MII #0 status 2809, link partner capability 0000, setting half-duplex.
eth0: Setting full-duplex based on MII #0 link partner capability of 45e1.
eth0: MII #0 status 282d, link partner capability 45e1, setting full-duplex.
[and the card unfortunately stays in half duplex mode]

________________

I noticed both cards seem to report different status codes?
Mr. Beckers gave me a hint to mii-diag, so I am including its
output here:

-- miidiag -v with the card that does fullduplex --

mii-diag.c:v1.07 10/14/99  Donald Becker (becker@cesdis.gsfc.nasa.gov)
  MII PHY #0 transceiver registers:
    3000 782d 0300 e543 01e1 45e1 0003 ffff
    ffff ffff ffff ffff ffff ffff ffff ffff
    0140 0029 0300 ffff ffff ffff ffff ffff
    ffff ffff ffff ffff ffff ffff ffff ffff.
  Basic mode control register 0x3000: 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 advertised 45e1: Flow-control 100baseTx-FD 100baseTx 
10baseT-FD 10baseT, w/ 802.3X flow control
.
  MII PHY #0 transceiver registers:
    3000 782d 0300 e543 01e1 45e1 0001 ffff
    ffff ffff ffff ffff ffff ffff ffff ffff
    0140 0000 0300 ffff ffff ffff ffff ffff
    ffff ffff ffff ffff ffff ffff ffff ffff.
  Basic mode control register 0x3000: Auto-negotiation enabled.
  Basic mode status register 0x782d ... 782d.
    Link status: established.
    Capable of  100baseTx-FD 100baseTx 10baseT-FD 10baseT.
    Able to perform Auto-negotiation, negotiation complete.
  Vendor ID is 00:c0:39:--:--:--, model 20 rev. 3.
    Vendor/Part: TDK Semiconductor 78Q2120.
  I'm advertising 01e1: 100baseTx-FD 100baseTx 10baseT-FD 10baseT
    Advertising no additional info pages.
    IEEE 802.3 CSMA/CD protocol.
  Link partner capability is 45e1: Flow-control 100baseTx-FD 100baseTx 
10baseT-FD 10baseT.
    Negotiation  completed.
   TDK 78q2120 vendor-specific registers 16..18 are 0x0140 0x0000 0x0300
       Link polarity is detected as normal.
       Auto-negotiation complete, 10Mbps half duplex.
       Rx link in pass state, PLL locked.
       No new link status events.

-- miidiag -v with the card that does halfduplex --

mii-diag.c:v1.07 10/14/99  Donald Becker (becker@cesdis.gsfc.nasa.gov)
Using the default interface 'eth0'.
  MII PHY #0 transceiver registers:
    3000 282d 0300 e54b 00a1 45e1 0001 0000
    0000 0000 0000 0000 0000 0000 0000 0000
    0140 006d 0700 0000 0000 0000 0000 0000
    0000 0000 0000 0000 0000 0000 0000 0000.
  Basic mode control register 0x3000: Auto-negotiation enabled.
  You have link beat, and everything is working OK.
    This transceiver is capable of  100baseTx 10baseT.
    Able to perform Auto-negotiation, negotiation complete.
  Your link partner advertised 45e1: Flow-control 100baseTx-FD 100baseTx 
10baseT-FD 10baseT, w/ 802.3X flow control
.
  MII PHY #0 transceiver registers:
    3000 282d 0300 e54b 00a1 45e1 0001 0000
    0000 0000 0000 0000 0000 0000 0000 0000
    0140 0000 0700 0000 0000 0000 0000 0000
    0000 0000 0000 0000 0000 0000 0000 0000.
  Basic mode control register 0x3000: Auto-negotiation enabled.
  Basic mode status register 0x282d ... 282d.
    Link status: established.
    Capable of  100baseTx 10baseT.
    Able to perform Auto-negotiation, negotiation complete.
  Vendor ID is 00:c0:39:--:--:--, model 20 rev. 11.
    Vendor/Part: TDK transceiver (unknown type).
  I'm advertising 00a1: 100baseTx 10baseT
    Advertising no additional info pages.
    IEEE 802.3 CSMA/CD protocol.
  Link partner capability is 45e1: Flow-control 100baseTx-FD 100baseTx 
10baseT-FD 10baseT.
    Negotiation  completed.
   TDK 78q2120 vendor-specific registers 16..18 are 0x0140 0x0000 0x0700
       Link polarity is detected as normal.
       Auto-negotiation complete, 100Mbps half duplex.
       Rx link in pass state, PLL locked.
       No new link status events.

--

If I understand the output correctly, one of my 3c575 cards
is model 20 rev3, the other is rev11. Interestingly enough,
the (newer?) revision 11 is the one that has the problems.

Thanks for any hints that might help me solving the problem.
I suppose it should be something of a configuration setting,
since the same card, in the same environment, does do full
duplex under winnt.

Thanks for any help

Christoph.

--
Dipl. Inform. Univ. Christoph Moar             tel +39 0471 711037
alpin gmbh srl                                 fax +39 0471 711319
christoph.moar@alpin.it                        gsm +39 348 3057012
-------------------------------------------------------------------
To unsubscribe send a message body containing "unsubscribe"
to linux-vortex-request@beowulf.org