net: enetc: allow phy-mode = "1000base-x"
The driver code proper is handled by the lynx_pcs. The enetc just needs to populate phylink's supported_interfaces array, and return true for this phy-mode in enetc_port_has_pcs(), such that it creates an internal MDIO bus through which the Lynx PCS registers are accessed. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Link: https://lore.kernel.org/r/20240103113445.3892971-1-vladimir.oltean@nxp.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
fe1eb24bd5
commit
14d0681b3a
@ -920,6 +920,7 @@ static void enetc_imdio_remove(struct enetc_pf *pf)
|
||||
static bool enetc_port_has_pcs(struct enetc_pf *pf)
|
||||
{
|
||||
return (pf->if_mode == PHY_INTERFACE_MODE_SGMII ||
|
||||
pf->if_mode == PHY_INTERFACE_MODE_1000BASEX ||
|
||||
pf->if_mode == PHY_INTERFACE_MODE_2500BASEX ||
|
||||
pf->if_mode == PHY_INTERFACE_MODE_USXGMII);
|
||||
}
|
||||
@ -1116,6 +1117,8 @@ static int enetc_phylink_create(struct enetc_ndev_priv *priv,
|
||||
pf->phylink_config.supported_interfaces);
|
||||
__set_bit(PHY_INTERFACE_MODE_SGMII,
|
||||
pf->phylink_config.supported_interfaces);
|
||||
__set_bit(PHY_INTERFACE_MODE_1000BASEX,
|
||||
pf->phylink_config.supported_interfaces);
|
||||
__set_bit(PHY_INTERFACE_MODE_2500BASEX,
|
||||
pf->phylink_config.supported_interfaces);
|
||||
__set_bit(PHY_INTERFACE_MODE_USXGMII,
|
||||
|
Loading…
x
Reference in New Issue
Block a user