[tulip] Forcing link speeds in tulip 0.9.15-pre1 (May 12, 2001) fails for ZYNX ZX346Q.

Ben Greear greearb@candelatech.com
Thu, 07 Jun 2001 00:11:35 -0700


System: RH 7.1
Kernel 2.4.5-pre3
NICS: 1 ZX346Q quad-port
      2 EEPRO cards, single port
Tulip driver: 0.9.15-pre1 (May 12, 2001)


I'm trying to get my GUI to set the link speeds of
ethernet drivers supporting the MII-diag interface.

The eepro driver seems to be working fine for me, but
the tulip fails.  (This tulip driver also fails to
negotiate correctly and ends up with massive carrier errors, but
that is another sordid tale...)

What I am trying to do is set the link speed (to 10bt-HD, for instance),
by writing the reg0_val (in mii-diag.c parlance).

As far as I can tell from logging, that is the only configuration
write I am doing.

mii-diag seems to fail too:

[root@lf1 /root]# mii-diag -F 10bt-HD eth3
Setting the speed to "fixed", Control register 2100.
Basic registers of MII PHY #32:  1000 786c 0000 0000 01e1 41e1 0000 0000.
 Basic mode control register 0x1000: Auto-negotiation enabled.
 You have link beat, and everything is working OK.
 Your link partner advertised 41e1: 100baseTx-FD 100baseTx 10baseT-FD 10baseT.

[root@lf1 /root]# mii-diag eth3
Basic registers of MII PHY #32:  1000 786c 0000 0000 01e1 41e1 0000 0000.
 Basic mode control register 0x1000: Auto-negotiation enabled.
 You have link beat, and everything is working OK.
 Your link partner advertised 41e1: 100baseTx-FD 100baseTx 10baseT-FD 10baseT.

[root@lf1 /root]# mii-diag -vv eth3
mii-diag.c:v2.00 4/19/2000  Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
 MII PHY #32 transceiver registers:
   1000 786c 0000 0000 01e1 41e1 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.
 Basic mode control register 0x1000: 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 41e1: 100baseTx-FD 100baseTx 10baseT-FD 10baseT.
 MII PHY #32 transceiver registers:
   1000 786c 0000 0000 01e1 41e1 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.
 Basic mode control register 0x1000: Auto-negotiation enabled.
 Basic mode status register 0x786c ... 786c.
   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 01e1: 100baseTx-FD 100baseTx 10baseT-FD 10baseT
   Advertising no additional info pages.
   IEEE 802.3 CSMA/CD protocol.
 Link partner capability is 41e1: 100baseTx-FD 100baseTx 10baseT-FD 10baseT.
   Negotiation  completed.


Here is the kernel boot msg.  The board is a quad-port ZYNX ZX346Q.

Linux Tulip driver version 0.9.15-pre1 (May 12, 2001)
tulip0:  EEPROM default media type Autosense.
tulip0:  Index #0 - Media 10baseT (#0) described by a 21142 Serial PHY (2) block.
tulip0:  Index #1 - Media 10baseT-FDX (#4) described by a 21142 Serial PHY (2) block.
tulip0:  Index #2 - Media 100baseTx (#3) described by a 21143 SYM PHY (4) block.
tulip0:  Index #3 - Media 100baseTx-FDX (#5) described by a 21143 SYM PHY (4) block.
eth3: Digital DS21143 Tulip rev 65 at 0xd000, 00:C0:95:E2:4C:0C, IRQ 10.
tulip1:  EEPROM default media type Autosense.
tulip1:  Index #0 - Media 10baseT (#0) described by a 21142 Serial PHY (2) block.
tulip1:  Index #1 - Media 10baseT-FDX (#4) described by a 21142 Serial PHY (2) block.
tulip1:  Index #2 - Media 100baseTx (#3) described by a 21143 SYM PHY (4) block.
tulip1:  Index #3 - Media 100baseTx-FDX (#5) described by a 21143 SYM PHY (4) block.
eth4: Digital DS21143 Tulip rev 65 at 0xd400, 00:C0:95:E2:4C:0D, IRQ 11.
tulip2:  EEPROM default media type Autosense.
tulip2:  Index #0 - Media 10baseT (#0) described by a 21142 Serial PHY (2) block.
tulip2:  Index #1 - Media 10baseT-FDX (#4) described by a 21142 Serial PHY (2) block.
tulip2:  Index #2 - Media 100baseTx (#3) described by a 21143 SYM PHY (4) block.
tulip2:  Index #3 - Media 100baseTx-FDX (#5) described by a 21143 SYM PHY (4) block.
eth5: Digital DS21143 Tulip rev 65 at 0xd800, 00:C0:95:E2:4C:0E, IRQ 5.
tulip3:  EEPROM default media type Autosense.
tulip3:  Index #0 - Media 10baseT (#0) described by a 21142 Serial PHY (2) block.
tulip3:  Index #1 - Media 10baseT-FDX (#4) described by a 21142 Serial PHY (2) block.
tulip3:  Index #2 - Media 100baseTx (#3) described by a 21143 SYM PHY (4) block.
tulip3:  Index #3 - Media 100baseTx-FDX (#5) described by a 21143 SYM PHY (4) block.
eth6: Digital DS21143 Tulip rev 65 at 0xdc00, 00:C0:95:E2:4C:0F, IRQ 9.

Thanks,
Ben

-- 
Ben Greear <greearb@candelatech.com>          <Ben_Greear@excite.com>
President of Candela Technologies Inc      http://www.candelatech.com
ScryMUD:  http://scry.wanfear.com     http://scry.wanfear.com/~greear