[dpdk-dev] [PATCH v1 00/13] Implement new devargs framework
Stephen Hemminger
stephen at networkplumber.org
Thu Aug 30 17:42:26 CEST 2018
On Thu, 30 Aug 2018 15:41:51 +0200
Gaetan Rivet <gaetan.rivet at 6wind.com> wrote:
> Last release saw the introduction of the new devargs system.
> To this end, the "class" abstraction was described as well
> as a common API for querying and declaring devices.
>
> This patchset implements the "eth" device class and the
> query/declaration part of the framework for PCI and vdev buses,
> enabling a minimal support for the new system.
>
> A new testpmd command is added to test device querying.
>
> Devargs parsing is extended in the relevant buses to test
> device declaration. This part uses the new "rte_eth_dev_create" API,
> introduced last release and used by only two PMDs, for now.
>
> The new devargs format is also made available through the new --dev parameter.
>
> Next work is to generalize use of new API for eth_dev creation,
> compatibility layer for -w, -b and --vdev with --dev, and devargs unit test.
>
> Gaetan Rivet (13):
> bus/pci: implement device iteration and comparison
> bus/pci: add device matching field id
> bus/vdev: implement device iteration
> bus/vdev: add device matching field driver
> ethdev: add private generic device iterator
> ethdev: register ether layer as a class
> ethdev: add device matching field name
> app/testpmd: add show device command
> bus/pci: pre-process declarative PCI devargs
> bus/vdev: pre-process declarative vdev devargs
> bus/pci: process declarative PCI devargs
> ethdev: process declarative eth devargs
> eal: add generic dev parameter
>
> app/test-pmd/cmdline.c | 54 +++++++
> doc/guides/testpmd_app_ug/testpmd_funcs.rst | 24 ++++
> drivers/bus/pci/Makefile | 3 +-
> drivers/bus/pci/bsd/pci.c | 5 +
> drivers/bus/pci/linux/pci.c | 5 +
> drivers/bus/pci/meson.build | 6 +-
> drivers/bus/pci/pci_common.c | 6 +-
> drivers/bus/pci/pci_params.c | 139 ++++++++++++++++++
> drivers/bus/pci/private.h | 54 +++++++
> drivers/bus/vdev/Makefile | 3 +-
> drivers/bus/vdev/meson.build | 5 +-
> drivers/bus/vdev/vdev.c | 20 +--
> drivers/bus/vdev/vdev_params.c | 112 +++++++++++++++
> drivers/bus/vdev/vdev_private.h | 32 +++++
> lib/librte_eal/common/eal_common_devargs.c | 4 +
> lib/librte_eal/common/eal_common_options.c | 36 ++++-
> lib/librte_eal/common/eal_options.h | 2 +
> lib/librte_ethdev/Makefile | 4 +-
> lib/librte_ethdev/eth_private.c | 31 ++++
> lib/librte_ethdev/eth_private.h | 31 ++++
> lib/librte_ethdev/meson.build | 4 +-
> lib/librte_ethdev/rte_class_eth.c | 148 ++++++++++++++++++++
> lib/librte_ethdev/rte_ethdev.c | 7 +
> 23 files changed, 714 insertions(+), 21 deletions(-)
> create mode 100644 drivers/bus/pci/pci_params.c
> create mode 100644 drivers/bus/vdev/vdev_params.c
> create mode 100644 drivers/bus/vdev/vdev_private.h
> create mode 100644 lib/librte_ethdev/eth_private.c
> create mode 100644 lib/librte_ethdev/eth_private.h
> create mode 100644 lib/librte_ethdev/rte_class_eth.c
>
> --
> 2.18.0
>
I have devargs for vmbus queued.
More information about the dev
mailing list