mirror of
https://github.com/torvalds/linux.git
synced 2024-12-09 20:51:43 +00:00
net: stmmac: use .mac_select_pcs() interface
Convert stmmac to use the mac_select_pcs() interface rather than using phylink_set_pcs(). The intention here is to unify the approach for PCS and eventually to remove phylink_set_pcs(). Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
04a0683f7d
commit
72e94511e9
@ -936,6 +936,17 @@ static void stmmac_mac_flow_ctrl(struct stmmac_priv *priv, u32 duplex)
|
||||
priv->pause, tx_cnt);
|
||||
}
|
||||
|
||||
static struct phylink_pcs *stmmac_mac_select_pcs(struct phylink_config *config,
|
||||
phy_interface_t interface)
|
||||
{
|
||||
struct stmmac_priv *priv = netdev_priv(to_net_dev(config->dev));
|
||||
|
||||
if (!priv->hw->xpcs)
|
||||
return NULL;
|
||||
|
||||
return &priv->hw->xpcs->pcs;
|
||||
}
|
||||
|
||||
static void stmmac_mac_config(struct phylink_config *config, unsigned int mode,
|
||||
const struct phylink_link_state *state)
|
||||
{
|
||||
@ -1073,6 +1084,7 @@ static void stmmac_mac_link_up(struct phylink_config *config,
|
||||
|
||||
static const struct phylink_mac_ops stmmac_phylink_mac_ops = {
|
||||
.validate = phylink_generic_validate,
|
||||
.mac_select_pcs = stmmac_mac_select_pcs,
|
||||
.mac_config = stmmac_mac_config,
|
||||
.mac_link_down = stmmac_mac_link_down,
|
||||
.mac_link_up = stmmac_mac_link_up,
|
||||
@ -1209,9 +1221,6 @@ static int stmmac_phy_setup(struct stmmac_priv *priv)
|
||||
if (IS_ERR(phylink))
|
||||
return PTR_ERR(phylink);
|
||||
|
||||
if (priv->hw->xpcs)
|
||||
phylink_set_pcs(phylink, &priv->hw->xpcs->pcs);
|
||||
|
||||
priv->phylink = phylink;
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user