Go to file
Ophir Munk 93f4ece91a net/mlx5: spawn ethdev ports on Windows
This commit implements mlx5_dev_spawn() API which allocates an eth
device (struct rte_eth_dev) for each PCI device. When working with
representors virtual functions (as in Linux), one PCI device may spawn
several eth devices: the master device for the main physical function
(PF) and several representors for the virtual functions (VFs).  However,
currently Windows does not work in switch dev mode, therefore, no VFs
are created and no representors are spawned. In this case one eth device
is created per one PCI main port.  In addition to device creation - the
device configuration must be correctly set. The device arguments
(devargs - set by the user) are parsed but they may be overridden by
Windows limitations or hardware configurations. Some associated network
parameters are stored in eth device (e.g. ifindex, MAC address, MTU) and
some callback (e.g. burst functions) are set.

Signed-off-by: Ophir Munk <ophirmu@nvidia.com>
Signed-off-by: Tal Shnaiderman <talshn@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
2021-01-08 16:03:08 +01:00
.ci ci: enable v21 ABI checks 2020-12-14 15:34:04 +01:00
.github/workflows ci: fix package installation in GitHub Actions 2020-12-19 09:21:25 +01:00
app app/testpmd: release flows left before port stop 2021-01-08 16:03:07 +01:00
buildtools build: fix plugin load on static build 2021-01-05 23:01:36 +01:00
config build: disable Windows warnings for insecure funtions 2020-12-07 21:34:04 +01:00
devtools common/mlx5: add Windows exports file 2021-01-08 16:03:07 +01:00
doc net/bnxt: remove support for some PCI IDs 2021-01-08 16:03:06 +01:00
drivers net/mlx5: spawn ethdev ports on Windows 2021-01-08 16:03:08 +01:00
examples build: fix plugin load on static build 2021-01-05 23:01:36 +01:00
kernel kni: fix build on RHEL 8.3 2020-11-27 01:39:54 +01:00
lib rcu: use EAL memory barrier API 2021-01-11 15:34:21 +01:00
license license: add licenses for exception cases 2020-12-11 12:22:19 +01:00
usertools usertools: remove dpdk-setup.sh 2020-11-27 17:25:24 +01:00
.editorconfig
.gitattributes
.gitignore regex/mlx5: introduce driver for BlueField 2 2020-07-21 19:04:05 +02:00
.travis.yml ci: enable v21 ABI checks 2020-12-14 15:34:04 +01:00
ABI_VERSION version: 21.02-rc0 2020-11-30 10:55:22 +01:00
MAINTAINERS net/ionic: update maintainer and documentation 2021-01-08 16:03:04 +01:00
Makefile build: create dummy Makefile 2020-09-07 23:51:57 +02:00
meson_options.txt build: update meson for Marvell Armada drivers 2021-01-08 16:03:05 +01:00
meson.build examples: fix flattening directory layout on install 2020-11-12 19:33:06 +01:00
README
VERSION version: 21.02-rc0 2020-11-30 10:55:22 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD-3-Clause license for the core libraries
and drivers. The kernel components are GPL-2.0 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org