mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-11 07:34:31 +00:00
drivers: net: fsl_enetc: move PCS and PHY config to probe
This reduces the time needed to establish a link as we don't reset the link each time the interface is used. Our Link capabilities do not change at run-time so there is no need to re-apply PHY configuration each time. Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
parent
307f8a6d1f
commit
a931f78307
1 changed files with 9 additions and 8 deletions
|
@ -190,12 +190,6 @@ static void enetc_start_pcs(struct udevice *dev)
|
|||
case PHY_INTERFACE_MODE_SGMII_2500:
|
||||
enetc_init_sgmii(dev);
|
||||
break;
|
||||
case PHY_INTERFACE_MODE_RGMII:
|
||||
case PHY_INTERFACE_MODE_RGMII_ID:
|
||||
case PHY_INTERFACE_MODE_RGMII_RXID:
|
||||
case PHY_INTERFACE_MODE_RGMII_TXID:
|
||||
enetc_init_rgmii(dev);
|
||||
break;
|
||||
case PHY_INTERFACE_MODE_XGMII:
|
||||
case PHY_INTERFACE_MODE_USXGMII:
|
||||
case PHY_INTERFACE_MODE_XFI:
|
||||
|
@ -258,6 +252,9 @@ static int enetc_probe(struct udevice *dev)
|
|||
|
||||
dm_pci_clrset_config16(dev, PCI_COMMAND, 0, PCI_COMMAND_MEMORY);
|
||||
|
||||
enetc_start_pcs(dev);
|
||||
enetc_config_phy(dev);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -433,8 +430,12 @@ static int enetc_start(struct udevice *dev)
|
|||
enetc_setup_tx_bdr(dev);
|
||||
enetc_setup_rx_bdr(dev);
|
||||
|
||||
enetc_start_pcs(dev);
|
||||
enetc_config_phy(dev);
|
||||
if (priv->if_type == PHY_INTERFACE_MODE_RGMII ||
|
||||
priv->if_type == PHY_INTERFACE_MODE_RGMII_ID ||
|
||||
priv->if_type == PHY_INTERFACE_MODE_RGMII_RXID ||
|
||||
priv->if_type == PHY_INTERFACE_MODE_RGMII_TXID)
|
||||
enetc_init_rgmii(dev);
|
||||
|
||||
if (priv->phy)
|
||||
phy_startup(priv->phy);
|
||||
|
||||
|
|
Loading…
Reference in a new issue