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 <[email protected]>
---

I have these patches on top of the following two patch sets, they don't apply
cleanly without them:
https://patchwork.ozlabs.org/project/uboot/list/?series=142879
https://patchwork.ozlabs.org/project/uboot/list/?series=142858

 drivers/net/fsl_enetc.c | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/drivers/net/fsl_enetc.c b/drivers/net/fsl_enetc.c
index 64dc244da2..e86f3dddb5 100644
--- a/drivers/net/fsl_enetc.c
+++ b/drivers/net/fsl_enetc.c
@@ -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);
 
-- 
2.17.1

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to