RE: Full/Half duplex - diagnostics not the same as reality

"Miskell, Craig" <[email protected]>
Newsgroups gmane.linux.drivers.vortex.devel
Message-ID <[email protected]>
> -----Original Message-----
> From: Bogdan Costescu [mailto:[email protected]] 
> Sent: Friday, 13 June 2003 7:50 a.m.
> To: Miskell, Craig
> Cc: [email protected]
> Subject: Re: [vortex] Full/Half duplex - diagnostics not the 
> same as reality
> 
> 
> On Thu, 12 Jun 2003, Miskell, Craig wrote:

> > So I'm confused - it seems to be working, but the 
> diagnostics indicate
> > otherwise unless I force the setting using mii-diag.  
> 
> I think that you didn't pay enough attention to all the 
> output. See this:
> 
> >    IEEE 802.3 CSMA/CD protocol. Link partner capability is 0080: 
> > 100baseTx.
> >    Negotiation did not complete.
> 
> It does say that negotiation did not complete... And does not 
> say anything 
> about the partner being able of FD, although you know that it 
> should be 
> forced to FD. So it's clear that the card didn't see the switch port 
> properly.
> 
> Please read this very recent message (any maybe the whole 
> thread) on a 
> very related topic:
> http://www.scyld.com/pipermail/vortex/2003-June/002453.html

> > Is it possible that it's not really running full-duplex but that
> > something else in that stops the collisions?
>
> After you issued the 'mii-diag -F' command, it should run FD; "-F"
forces 
> that mode and disables autonegotiation. Also keep in mind that FD
cannot 
> have collisions by definition.

Ok, this is starting to make sense.  If can summarise:  full_duplex=1
changes what the card advertises, but it still auto-negotiates.  Hence,
I am still working in Half duplex mode.  

Oh yeah, and the driver is 0.99H 11/17/98 
Yeah, I know it's old - maybe that's my problem ;-)

In that case, I have some points that still I would love to get
clarification on:

1:  Why do I stop getting collisions having unsuccesfully "forced"
full-duplex?  Surely if it's in HD, I should still be seeing the same
behaviour (lots of collisions).  I quickly scanned the driver source for
my version, and couldn't see anything obvious.  

2:  For fun, I'll put the entirety of the output of mii-diag -v (having
loaded the module with full_duplex=1 option), but the line I'm
interested in is the one near the end that mutters about the advertised
speeds... It's still advertising HD, which my reading of the thread
referenced above stated should not be happening:
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 24 (BMCR 0x3000).
 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 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 #24 transceiver registers:
   3000 786d 0000 0000 01e1 0080 0004 2001
   0000 0000 0000 0000 0000 0000 0000 0000
   8000 0ecf 11d1 0000 0000 0005 2001 0000
   0000 2046 0004 1c11 001a 1000 0000 0000.
 Basic mode control register 0x3000: 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 01e1: 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.

3: Interestingly, if I put options=12 in the module conf, I get the same
practical results (good transfer speed, no collisions), but mii-tool
claims:
eth0: 10 Mbit, half duplex, no link
despite there definitely being a link.  Mii-diag also spits out some
interesting data:
 Basic mode control register 0xc000: Auto-negotiation disabled!
   Speed fixed at 10 mbps, half-duplex.
  Transceiver currently being reset!
  Transceiver in loopback mode!
 Basic mode status register 0xc000 ... c000.
   Link status: not established.
   Capable of  100baseT4 100baseTx-FD.
   Unable to perform Auto-negotiation, negotiation not complete.
 This transceiver has no vendor identification.
 I'm advertising c000:
   Advertising additional info pages.
   Using an unknown (non 802.3) encapsulation.
 Link partner capability is c000:.
   Negotiation  completed.

C is 12, so I know where the value is coming from, but it's fascinating
that both the diagnostics are convinced there is no link when there is.
Any clues (it's unimportant, I'm just curious).

This is all just getting confusing.  The thing is, I can/have solved my
problem, it's just the understanding that's eluding me.  Meanwhile, I
think I'll put the mii-diag -F in a startup script somewhere and nuke
the option in conf.modules.  

Hoping that somebody can help me understand,
Craig


=======================================================================
Attention: The information contained in this message and/or attachments
from AgResearch Limited is intended only for the persons or entities
to which it is addressed and may contain confidential and/or privileged
material. Any review, retransmission, dissemination or other use of, or
taking of any action in reliance upon, this information by persons or
entities other than the intended recipients is prohibited by AgResearch
Limited. If you have received this message in error, please notify the
sender immediately.
=======================================================================
_______________________________________________
vortex mailing list
[email protected]
http://www.scyld.com/mailman/listinfo/vortex
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.