tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: half-/full-duplex ethernet and ifconfig

On Wed, Nov 14, 2012 at 10:19:12AM -0800, Jonathan Stone wrote:
> Thor,
> There is one case, very well-known some 10-12 years ago, which does not fit 
> your model:
> switfches with PHY ports where the hardware _does not implement 
> auto-negotiation_., period.

No.  When such a switch is the link partner, a correct device driver on the
NetBSD end should do precisely what Apple (and most Windows driver
maintainers) do: when configured for one mode only, attempt to autonegotiate,
offering only that mode, and if autonegotiation fails, forcibly put the
local PHY in that mode -- if even necessary.  I have certainly worked with
PHYs which when configured to autonegotiate with only one mode, will
reasonably "fall back" to that mode when autoneg fails; for all I know this
may be the usual behavior.

A driver implementing this behavior will correctly interoperate with a
link partner set to hardwired speed/duplex, as well as one with working
autonegotiation that is turned on.  That's not true for the current
implementation.  The only case where what I propose won't work is if the
link partner has broken autonegotiation which cannot be switched off,
and I haven't actually run into any link partners like that.  There
may be some, but I'd like an example, because if there are, they cannot,
for example, talk to anything running Mac OS X.


Home | Main Index | Thread Index | Old Index