[PATCH RFC net-next 9/9] net: sparx5: switch PCS driver to use phylink_pcs_neg_mode()

Daniel Machon daniel.machon at microchip.com
Tue May 30 05:49:39 PDT 2023


> Use the newly introduced phylink_pcs_neg_mode() to configure whether
> inband-AN should be used.
> 
> Signed-off-by: Russell King (Oracle) <rmk+kernel at armlinux.org.uk>
> ---
>  drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c b/drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c
> index bb97d27a1da4..87bdec185383 100644
> --- a/drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c
> +++ b/drivers/net/ethernet/microchip/sparx5/sparx5_phylink.c
> @@ -99,13 +99,17 @@ static int sparx5_pcs_config(struct phylink_pcs *pcs,
>  {
>         struct sparx5_port *port = sparx5_pcs_to_port(pcs);
>         struct sparx5_port_config conf;
> +       unsigned int neg_mode;
>         int ret = 0;
> 
> +       neg_mode = phylink_pcs_neg_mode(mode, interface, advertising);
> +
>         conf = port->conf;
>         conf.power_down = false;
>         conf.portmode = interface;
> -       conf.inband = phylink_autoneg_inband(mode);
> -       conf.autoneg = phylink_test(advertising, Autoneg);
> +       conf.inband = neg_mode == PHYLINK_PCS_NEG_INBAND_DISABLED ||
> +                     neg_mode == PHYLINK_PCS_NEG_INBAND_ENABLED;
> +       conf.autoneg = neg_mode == PHYLINK_PCS_NEG_INBAND_ENABLED;
>         conf.pause_adv = 0;
>         if (phylink_test(advertising, Pause))
>                 conf.pause_adv |= ADVERTISE_1000XPAUSE;
> --
> 2.30.2
> 
>

Hi Russel,

This looks good to me. Tested on sparx5 pcb134 and pcb135.

/Daniel



More information about the linux-arm-kernel mailing list