net/i40e: fix link speed
authorXiaoyun Li <xiaoyun.li@intel.com>
Tue, 10 Jul 2018 09:30:54 +0000 (17:30 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 23 Jul 2018 21:55:26 +0000 (23:55 +0200)
commit9214ee18eef97709eca481998cf7dca50520896c
tree0b48782de1ec746d2a7094a32ecee54bcd4855e9
parente062bdc6cbaef636b68e1cdd2a0aa14eebbdc1c6
net/i40e: fix link speed

When link needs to go up, I40E_AQ_PHY_AN_ENABLED is always be set in DPDK.
So all speeds are always set. This causes speed config never works.

This patch fixes this issue and only allows to set available speeds. If
link needs to go up and speed setting is not supported, it will print
warning and set default available speeds. And when link needs to go down,
link speed field should be set to non-zero to avoid link down issue when
binding back to kernel driver.

Fixes: ca7e599d4506 ("net/i40e: fix link management")
Fixes: 1bb8f661168d ("net/i40e: fix link down and negotiation")
Cc: stable@dpdk.org
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/i40e/i40e_ethdev.c