30a86157f6
On BlueField platform we have the new entity - PF representor. This one represents the PCI PF attached to external host on the side of ARM. The traffic sent by the external host to the NIC via PF will be seem by ARM on this PF representor. This patch refactors port recognizing capability on the base of physical port name. We have two groups of name formats. Legacy name formats are supported by kernels before ver 5.0 (being more precise - before the patch [1]) or before Mellanox OFED 4.6, and new naming formats added by the patch [1]. Legacy naming formats are supported: - missing physical port name (no sysfs/netlink key) at all, master is assumed - decimal digits (for example "12"), representor is assumed, the value is the index of attached VF New naming formats are supported: - "p" followed by decimal digits, for example "p2", master is assumed - "pf" followed by PF index concatenated with "vf" followed by VF index, for example "pf0vf1", representor is assumed. If index of VF is "-1" it is a special case of host PF representor, this representor must be indexed in devargs as 65535, for example representor=[0-3,65535] will allow representors for VF0, VF1, VF2, VF3 and for host PF. Note: do not specify representor=[0-65535], it causes devargs processing error, because number of ports (rte_eth_dev) is limited. Applications should distinguish representors and master devices exclusively by device flag RTE_ETH_DEV_REPRESENTOR and do not rely on switch port_id (mlx5 PMD deduces ones from representor_id) values returned by dev_infos_get() API. [1] https://www.spinics.net/lists/netdev/msg547007.html Linux-tree: c12ecc23 (Or Gerlitz 2018-04-25 17:32 +0300) "net/mlx5e: Move to use common phys port names for vport representors" Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com> Acked-by: Shahaf Shuler <shahafs@mellanox.com> |
||
---|---|---|
.. | ||
af_packet | ||
af_xdp | ||
ark | ||
atlantic | ||
avp | ||
axgbe | ||
bnx2x | ||
bnxt | ||
bonding | ||
cxgbe | ||
dpaa | ||
dpaa2 | ||
e1000 | ||
ena | ||
enetc | ||
enic | ||
failsafe | ||
fm10k | ||
i40e | ||
iavf | ||
ice | ||
ifc | ||
ipn3ke | ||
ixgbe | ||
kni | ||
liquidio | ||
mlx4 | ||
mlx5 | ||
mvneta | ||
mvpp2 | ||
netvsc | ||
nfb | ||
nfp | ||
null | ||
octeontx | ||
pcap | ||
qede | ||
ring | ||
sfc | ||
softnic | ||
szedata2 | ||
tap | ||
thunderx | ||
vdev_netvsc | ||
vhost | ||
virtio | ||
vmxnet3 | ||
Makefile | ||
meson.build |