bool mac_link_dropped;
bool using_mac_select_pcs;
-@@ -987,6 +992,22 @@ static void phylink_mac_pcs_an_restart(s
+@@ -990,6 +995,22 @@ static void phylink_mac_pcs_an_restart(s
}
}
static void phylink_major_config(struct phylink *pl, bool restart,
const struct phylink_link_state *state)
{
-@@ -1023,11 +1044,16 @@ static void phylink_major_config(struct
+@@ -1026,11 +1047,16 @@ static void phylink_major_config(struct
/* If we have a new PCS, switch to the new PCS after preparing the MAC
* for the change.
*/
if (pl->pcs) {
err = pl->pcs->ops->pcs_config(pl->pcs, pl->cur_link_an_mode,
state->interface,
-@@ -1498,6 +1524,7 @@ struct phylink *phylink_create(struct ph
+@@ -1502,6 +1528,7 @@ struct phylink *phylink_create(struct ph
pl->link_config.speed = SPEED_UNKNOWN;
pl->link_config.duplex = DUPLEX_UNKNOWN;
pl->link_config.an_enabled = true;
pl->mac_ops = mac_ops;
__set_bit(PHYLINK_DISABLE_STOPPED, &pl->phylink_disable_state);
timer_setup(&pl->link_poll, phylink_fixed_poll, 0);
-@@ -1899,6 +1926,8 @@ void phylink_start(struct phylink *pl)
+@@ -1903,6 +1930,8 @@ void phylink_start(struct phylink *pl)
if (pl->netdev)
netif_carrier_off(pl->netdev);
/* Apply the link configuration to the MAC when starting. This allows
* a fixed-link to start with the correct parameters, and also
* ensures that we set the appropriate advertisement for Serdes links.
-@@ -1909,6 +1938,8 @@ void phylink_start(struct phylink *pl)
+@@ -1913,6 +1942,8 @@ void phylink_start(struct phylink *pl)
*/
phylink_mac_initial_config(pl, true);
phylink_enable_and_run_resolve(pl, PHYLINK_DISABLE_STOPPED);
if (pl->cfg_link_an_mode == MLO_AN_FIXED && pl->link_gpio) {
-@@ -1927,15 +1958,9 @@ void phylink_start(struct phylink *pl)
+@@ -1931,15 +1962,9 @@ void phylink_start(struct phylink *pl)
poll = true;
}
if (poll)
mod_timer(&pl->link_poll, jiffies + HZ);
if (pl->phydev)
-@@ -1972,6 +1997,10 @@ void phylink_stop(struct phylink *pl)
+@@ -1976,6 +2001,10 @@ void phylink_stop(struct phylink *pl)
}
phylink_run_resolve_and_disable(pl, PHYLINK_DISABLE_STOPPED);