Signed-off-by: Shelton Chia <jiaxt at sinogrid.com>
---
 lib/librte_pmd_e1000/igb_ethdev.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/librte_pmd_e1000/igb_ethdev.c 
b/lib/librte_pmd_e1000/igb_ethdev.c
index 504ae74..314ef2a 100644
--- a/lib/librte_pmd_e1000/igb_ethdev.c
+++ b/lib/librte_pmd_e1000/igb_ethdev.c
@@ -948,7 +948,10 @@ eth_igb_stop(struct rte_eth_dev *dev)
        }

        /* Power down the phy. Needed to make the link go Down */
-       e1000_power_down_phy(hw);
+       if (hw->phy.media_type == e1000_media_type_copper)
+               e1000_power_down_phy(hw);
+       else
+               e1000_shutdown_fiber_serdes_link(hw);

        igb_dev_clear_queues(dev);

-- 
2.3.0

Reply via email to