mbox series

[CFT,net-next,0/6] net: dsa: qca8k: convert to phylink_pcs and mark as non-legacy

Message ID YgKIIq2baq4yERS5@shell.armlinux.org.uk (mailing list archive)
Headers show
Series net: dsa: qca8k: convert to phylink_pcs and mark as non-legacy | expand

Message

Russell King (Oracle) Feb. 8, 2022, 3:11 p.m. UTC
This series adds support into DSA for the mac_select_pcs method, and
converts qca8k to make use of this, eventually marking qca8k as non-
legacy.

Patch 1 adds DSA support for mac_select_pcs.
Patch 2 and patch 3 moves code around in qca8k to make patch 4 more
readable.
Patch 4 does a simple conversion to phylink_pcs.
Patch 5 moves the serdes configuration to phylink_pcs.
Patch 6 marks qca8k as non-legacy.

 drivers/net/dsa/qca8k.c | 738 +++++++++++++++++++++++++++---------------------
 drivers/net/dsa/qca8k.h |   8 +
 include/net/dsa.h       |   3 +
 net/dsa/port.c          |  15 +
 4 files changed, 436 insertions(+), 328 deletions(-)

Comments

Christian Marangi Feb. 8, 2022, 3:18 p.m. UTC | #1
On Tue, Feb 08, 2022 at 03:11:30PM +0000, Russell King (Oracle) wrote:
> This series adds support into DSA for the mac_select_pcs method, and
> converts qca8k to make use of this, eventually marking qca8k as non-
> legacy.
> 
> Patch 1 adds DSA support for mac_select_pcs.

Was thinking... Is it possible to limit the polling just to sgmii/basex?
Would save some overhead in the case fixed-rate is set and the link
never change.

> Patch 2 and patch 3 moves code around in qca8k to make patch 4 more
> readable.
> Patch 4 does a simple conversion to phylink_pcs.
> Patch 5 moves the serdes configuration to phylink_pcs.
> Patch 6 marks qca8k as non-legacy.
> 
>  drivers/net/dsa/qca8k.c | 738 +++++++++++++++++++++++++++---------------------
>  drivers/net/dsa/qca8k.h |   8 +
>  include/net/dsa.h       |   3 +
>  net/dsa/port.c          |  15 +
>  4 files changed, 436 insertions(+), 328 deletions(-)
> 
> -- 
> RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
> FTTP is here! 40Mbps down 10Mbps up. Decent connectivity at last!
Russell King (Oracle) Feb. 8, 2022, 3:27 p.m. UTC | #2
On Tue, Feb 08, 2022 at 04:18:28PM +0100, Ansuel Smith wrote:
> On Tue, Feb 08, 2022 at 03:11:30PM +0000, Russell King (Oracle) wrote:
> > This series adds support into DSA for the mac_select_pcs method, and
> > converts qca8k to make use of this, eventually marking qca8k as non-
> > legacy.
> > 
> > Patch 1 adds DSA support for mac_select_pcs.
> 
> Was thinking... Is it possible to limit the polling just to sgmii/basex?
> Would save some overhead in the case fixed-rate is set and the link
> never change.

With this series, the decision to poll comes from the PCS "poll" member
when in inband mode. The PCS is selected by the mac_select_pcs
callback, which for this DSA device, will only be returned for SGMII or
1000BASE-X. Consequently, phylink will only poll the PCS if we are in
SGMII or 1000BASE-X mode.

Note that this polling has only be done if we're in inband mode and the
PCS requires polling, or in fixed-link mode if we have an IRQ-less GPIO
for link# state, or if poll_fixed_state is set in phylink_config.

PS, if you would like to ensure you're copied on patches to qca8k,
please add an entry in MAINTAINERS for this driver - I had to dig
through git history to try and work out who was maintaining this
driver. Thanks.