Subject: Re: [PATCH net-next v2 3/3] net: phy: marvell10g: place in powersave mode at probe

From: Russell King - ARM Linux admin <[email-masked]>
Date: Fri, 10 Apr 2020 17:04:09 +0100

On Fri, Apr 10, 2020 at 05:18:41PM +0200, Matteo Croce wrote:
> On Fri, Apr 10, 2020 at 5:16 PM Russell King - ARM Linux admin
> <[email-masked]> wrote:
> >
> > On Fri, Apr 10, 2020 at 04:59:44PM +0200, Matteo Croce wrote:
> > > On Fri, Apr 10, 2020 at 4:50 PM Russell King - ARM Linux admin
> > > <[email-masked]> wrote:
> > > >
> > > > On Fri, Apr 10, 2020 at 04:39:48PM +0200, Matteo Croce wrote:
> > > # ./mii-diag eth0 -p 32769
> > > Using the specified MII PHY index 32769.
> > > Basic registers of MII PHY #32769:  2040 0082 002b 09ab 0071 009a c000 0009.
> > >  Basic mode control register 0x2040: Auto-negotiation disabled, with
> > >  Speed fixed at 100 mbps, half-duplex.
> > >  Basic mode status register 0x0082 ... 0082.
> > >    Link status: not established.
> > >    *** Link Jabber! ***
> > >  Your link partner is generating 100baseTx link beat  (no autonegotiation).
> > >    End of basic transceiver information.
> > >
> > > root@macchiatobin:~# ip link show dev eth0
> > > 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP
> > > mode DEFAULT group default qlen 2048
> > >     link/ether 00:51:82:11:22:00 brd ff:ff:ff:ff:ff:ff
> > >
> > > But no traffic in any direction
> >
> > So you have the same version PHY hardware as I do.
> >
> > So, we need further diagnosis, which isn't possible without a more
> > advanced mii-diag tool - I'm sorting that out now, and will provide
> > a link to a git repo later this afternoon.
> >
> 
> Ok, I'll wait for the tool

Okay, please give this a go:

	git://git.armlinux.org.uk/~rmk/mii-diag/

Please send me the full output from:

# ./mii-diag eth0 -v -p 32768

It does colourise some of the output (which I should make conditional)
so don't be surprised if there's some escape codes in the output.
Please take this as alpha software; it needs a more work, and please
don't bother Donald Becker about it either!

You should see something like this:

mii-diag.c:v2.11 3/21/2005 Donald Becker ([email-masked])
 http://www.scyld.com/diag/index.html
  Using the new SIOCGMIIPHY value on PHY 0 (BMCR 0x2040).
Using the specified MII PHY index 32768.
  No MII transceiver present!.
  Use '--force' to view the information anyway.
libmii.c:v2.11 2/28/2005  Donald Becker ([email-masked])
 http://www.scyld.com/diag/index.html

 MII PHY #0:1 PMA/PMD transceiver registers:
   2040 0082 002b 09ab 0071 009a c000 0009
   9701 0000 0000 01a4 0000 0000 002b 09ab
   0000 0000 0000 0000 0000 0003 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
   0000 0000 0000 0000 0000 0000 0000 0000
   0000 0000 0000 0000 0000 0000 0000 0000.
 Vendor ID is 00:0a:c2:--:--:--, model 26 rev. 11.
   Vendor/Part: Marvell Semiconductor 88X3310.
...

For a SFP cage connection, the relevant parts are:

MII PHY #0:3 PCS Subdevice #2 transceiver registers
MII PHY #0:4 PHY XS Subdevice #2 transceiver registers
MII PHY #0:7 AN Subdevice #2 transceiver registers
MII PHY #0:7 AN Subdevice #3 transceiver registers

which should all say that link is established.

Also, note that the 88x3310 is setup to link with the _first_ media
type that comes up, so if you have both a connection through the SFP+
cage and copper, the first that establishes link will be active and
the other media will remain inactive.  So, only have either the SFP+
cage populated or the RJ45, never both.

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 10.2Mbps down 587kbps up