[dpdk-dev] [PATCH] ixgbe: fix link speed detection of ixgbevf

Choonho Son choonho.son at gmail.com
Sun Nov 9 14:01:28 CET 2014


Link speed of virtual function is detected as default speed(100Mbps, half-duplex).
Before checking VF link, get_link_status must be set.

Checking link status
PMD: ixgbe_check_for_rst_vf(): ixgbe_check_for_rst_vf
done
PMD: ixgbe_check_for_rst_vf(): ixgbe_check_for_rst_vf
Port 0 Link Up - speed 100 Mbps - half-duplex

Signed-off-by: Choonho Son <choonho.son at gmail.com>
---
 lib/librte_pmd_ixgbe/ixgbe_ethdev.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/librte_pmd_ixgbe/ixgbe_ethdev.c b/lib/librte_pmd_ixgbe/ixgbe_ethdev.c
index 9c73a30..6eab1e8 100644
--- a/lib/librte_pmd_ixgbe/ixgbe_ethdev.c
+++ b/lib/librte_pmd_ixgbe/ixgbe_ethdev.c
@@ -2002,6 +2002,7 @@ ixgbe_dev_link_update(struct rte_eth_dev *dev, int wait_to_complete)
 	memset(&old, 0, sizeof(old));
 	rte_ixgbe_dev_atomic_read_link_status(dev, &old);
 
+	hw->mac.get_link_status = 1;
 	/* check if it needs to wait to complete, if lsc interrupt is enabled */
 	if (wait_to_complete == 0 || dev->data->dev_conf.intr_conf.lsc != 0)
 		diag = ixgbe_check_link(hw, &link_speed, &link_up, 0);
-- 
1.9.1



More information about the dev mailing list