ethdev: redesign link speed config
authorMarc Sune <marcdevel@gmail.com>
Thu, 31 Mar 2016 22:12:29 +0000 (00:12 +0200)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Fri, 1 Apr 2016 19:38:34 +0000 (21:38 +0200)
commit82113036e4e54a82ec485a05acce9a43ceb60552
tree289cf206c6be574ddf7776f2090d1938037f98da
parente274f57322253a0da4b565f8df0175503c67258d
ethdev: redesign link speed config

This patch redesigns the API to set the link speed/s configuration
of an ethernet port. Specifically:

- it allows to define a set of advertised speeds for
  auto-negociation.
- it allows to disable link auto-negociation (single fixed speed).
- default: auto-negociate all supported speeds.

A flag autoneg in struct rte_eth_link indicates if link speed was a
result of auto-negociation or was fixed by configuration.

Signed-off-by: Marc Sune <marcdevel@gmail.com>
Tested-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Tested-by: Beilei Xing <beilei.xing@intel.com>
Tested-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
22 files changed:
app/test-pmd/cmdline.c
doc/guides/rel_notes/deprecation.rst
doc/guides/rel_notes/release_16_04.rst
drivers/net/af_packet/rte_eth_af_packet.c
drivers/net/bnx2x/bnx2x_ethdev.c
drivers/net/bonding/rte_eth_bond_8023ad.c
drivers/net/e1000/em_ethdev.c
drivers/net/e1000/igb_ethdev.c
drivers/net/i40e/i40e_ethdev.c
drivers/net/i40e/i40e_ethdev_vf.c
drivers/net/ixgbe/ixgbe_ethdev.c
drivers/net/mlx4/mlx4.c
drivers/net/mlx5/mlx5_ethdev.c
drivers/net/mpipe/mpipe_tilegx.c
drivers/net/null/rte_eth_null.c
drivers/net/pcap/rte_eth_pcap.c
drivers/net/ring/rte_eth_ring.c
drivers/net/szedata2/rte_eth_szedata2.c
drivers/net/vmxnet3/vmxnet3_ethdev.c
drivers/net/xenvirt/rte_eth_xenvirt.c
examples/ip_pipeline/config_parse.c
lib/librte_ether/rte_ethdev.h