Any objections to this one? Otherwise I will rebase and propose a formal patch
marc On 12/05/15 01:45, Marc Sune wrote: > The current rte_eth_dev_info abstraction does not provide any mechanism to > know the supported speed(s) of an ethdev. > > For some drivers (e.g. ixgbe), an educated guess can be done based on the > driver's name (driver_name in rte_eth_dev_info), see: > > http://dpdk.org/ml/archives/dev/2013-August/000412.html > > However, i) doing string comparisons is annoying, and can silently > break existing applications if PMDs change their names ii) it does not > provide all the supported capabilities of the ethdev iii) for some drivers it > is impossible determine correctly the (max) speed by the application > (e.g. in i40, distinguish between XL710 and X710). > > This small patch adds speed_capa bitmap in rte_eth_dev_info, which is filled > by the PMDs according to the physical device capabilities. > > WARNING: the patch is only tested with e1000s, and should be reviewed for > accuracy. > > > Marc Sune (2): > Added ETH_SPEED_CAP bitmap in rte_eth_dev_info > Filling speed capability bitmaps in the PMDs > > lib/librte_ether/rte_ethdev.h | 24 ++++++++++++++++++++++++ > lib/librte_pmd_e1000/em_ethdev.c | 6 ++++++ > lib/librte_pmd_e1000/igb_ethdev.c | 6 ++++++ > lib/librte_pmd_fm10k/fm10k_ethdev.c | 3 +++ > lib/librte_pmd_i40e/i40e_ethdev.c | 9 +++++++++ > lib/librte_pmd_ixgbe/ixgbe_ethdev.c | 10 ++++++++++ > lib/librte_pmd_mlx4/mlx4.c | 6 ++++++ > 7 files changed, 64 insertions(+) >