net: lan966x: update PCS driver to use neg_mode
authorRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Fri, 16 Jun 2023 12:06:53 +0000 (13:06 +0100)
committerJakub Kicinski <kuba@kernel.org>
Fri, 23 Jun 2023 02:41:01 +0000 (19:41 -0700)
Update lan966x's embedded PCS driver to use neg_mode rather than the
mode argument. As there is no pcs_link_up() method, this only affects
the pcs_config() method.

Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Link: https://lore.kernel.org/r/E1qA8E9-00EaFl-GN@rmk-PC.armlinux.org.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/microchip/lan966x/lan966x_main.c
drivers/net/ethernet/microchip/lan966x/lan966x_phylink.c

index f6931df..fbb0bb4 100644 (file)
@@ -818,6 +818,7 @@ static int lan966x_probe_port(struct lan966x *lan966x, u32 p,
        port->phylink_config.type = PHYLINK_NETDEV;
        port->phylink_pcs.poll = true;
        port->phylink_pcs.ops = &lan966x_phylink_pcs_ops;
+       port->phylink_pcs.neg_mode = true;
 
        port->phylink_config.mac_capabilities = MAC_ASYM_PAUSE | MAC_SYM_PAUSE |
                MAC_10 | MAC_100 | MAC_1000FD | MAC_2500FD;
index c5f9803..1d63903 100644 (file)
@@ -95,8 +95,7 @@ static void lan966x_pcs_get_state(struct phylink_pcs *pcs,
        lan966x_port_status_get(port, state);
 }
 
-static int lan966x_pcs_config(struct phylink_pcs *pcs,
-                             unsigned int mode,
+static int lan966x_pcs_config(struct phylink_pcs *pcs, unsigned int neg_mode,
                              phy_interface_t interface,
                              const unsigned long *advertising,
                              bool permit_pause_to_mac)
@@ -107,8 +106,8 @@ static int lan966x_pcs_config(struct phylink_pcs *pcs,
 
        config = port->config;
        config.portmode = interface;
-       config.inband = phylink_autoneg_inband(mode);
-       config.autoneg = phylink_test(advertising, Autoneg);
+       config.inband = neg_mode & PHYLINK_PCS_NEG_INBAND;
+       config.autoneg = neg_mode == PHYLINK_PCS_NEG_INBAND_ENABLED;
        config.advertising = advertising;
 
        ret = lan966x_port_pcs_set(port, &config);