netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/5] mvpp2 phylink fixes
@ 2019-02-08 15:34 Russell King - ARM Linux admin
  2019-02-08 15:35 ` [PATCH 1/5] net: marvell: mvpp2: phylink compliance updates Russell King
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Russell King - ARM Linux admin @ 2019-02-08 15:34 UTC (permalink / raw)
  To: Antoine Tenart, Maxime Chevallier
  Cc: Baruch Siach, David S. Miller, netdev, Sven Auhagen

Hi,

Having spent a while debugging issues with Sven Auhagen, it appears
that the mvpp2 network driver's phylink support isn't quite correct.

This series fixes that up, but, despite being tested locally, by
Sven, and by Antoine, I would prefer it to be applied to net-next
so that there is time for more people to test before it hits -rc or
stable backports.

The symptoms were that although PHYs would come up, the GMAC never
reported that the link was up, or in some cases it did report link
up but packets would not flow.  Various approaches were tried to
work around that, such as switching to in-band negotiation from
PHY mode, but ultimately the problem was in the way mvpp2 was being
programmed.

This series addresses that by, essentially, making mvpp2 follow the
same implementation pattern as mvneta: we configure the GMAC in three
stages:

1) the PHY interface mode
2) the negotiation advert
3) the negotiation style

Another issue is that mvpp2 was always taking the link down each time
its mac_config method was called: this is disruptive when the link is
already up, and we're just updating settings such as flow control.
There are some circumstances where we make the call despite there
being no changes (eg, when phylink is polling a GPIO or using a custom
link state function.)

This series depends on two previous patches already sent for net-next:
  net: marvell: mvpp2: fix lack of link interrupts
  net: marvell: mvpp2: use phy_interface_mode_is_8023z() helper

There is one last patch which deals with link status interrupts, which
I'll send separately because I think there's other considerations, but
that should not hold up this series of patches.

 drivers/net/ethernet/marvell/mvpp2/mvpp2.h      |   4 +-
 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 175 ++++++++++++++----------
 2 files changed, 108 insertions(+), 71 deletions(-)

-- 
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-02-09  7:09 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-08 15:34 [PATCH net-next 0/5] mvpp2 phylink fixes Russell King - ARM Linux admin
2019-02-08 15:35 ` [PATCH 1/5] net: marvell: mvpp2: phylink compliance updates Russell King
2019-02-08 15:35 ` [PATCH 2/5] net: marvell: mvpp2: fix stuck in-band SGMII negotiation Russell King
2019-02-08 15:35 ` [PATCH 3/5] net: marvell: mvpp2: only reprogram what is necessary on mac_config Russell King
2019-02-08 15:35 ` [PATCH 4/5] net: marvell: mvpp2: read correct pause bits Russell King
2019-02-08 15:35 ` [PATCH 5/5] net: marvell: mvpp2: fix AN restart Russell King
2019-02-09  7:09 ` [PATCH net-next 0/5] mvpp2 phylink fixes David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).