With the rte_bus infrastructure present in 17.02 it is possible to refactor the virtual device probing into a bus. This series also introduces the rte_vdev_device to better keep track of devices.
This patchset depends on: http://dpdk.org/dev/patchwork/patch/20416/ http://dpdk.org/dev/patchwork/patch/20417/ Changes since version 3: * revert implicit registration changes Changes since version 2: * implicit bus registration through rte_eal_vdrv_register() * explicit delay probing of virtual bus in rte_bus_probe() * addition of rte_vdev_device_args() helper * make virtual driver probe and remove take rte_vdev_device Changes since version 1: * addition of rte_vdev_device_name() helper * removed rte_eal_dev_init() from *.map files * use SOCKET_ID_ANY Jan Blunck (10): eal: probe legacy PCI devices before other bus devices eal: probe new virtual bus after other bus devices eal: move virtual device probing into a bus eal: remove unused rte_eal_dev_init() eal: Refactor vdev driver probe/remove eal: add struct rte_vdev_device eal: add virtual device name helper function eal: add virtual device arguments helper function eal: make virtual bus use rte_vdev_device eal: make virtual driver probe and remove take rte_vdev_device drivers/crypto/null/null_crypto_pmd.c | 18 +- drivers/net/af_packet/rte_eth_af_packet.c | 11 +- drivers/net/bonding/rte_eth_bond_pmd.c | 13 +- drivers/net/mpipe/mpipe_tilegx.c | 10 +- drivers/net/null/rte_eth_null.c | 13 +- drivers/net/pcap/rte_eth_pcap.c | 12 +- drivers/net/ring/rte_eth_ring.c | 9 +- drivers/net/tap/rte_eth_tap.c | 10 +- drivers/net/vhost/rte_eth_vhost.c | 10 +- drivers/net/virtio/virtio_user_ethdev.c | 18 +- drivers/net/xenvirt/rte_eth_xenvirt.c | 9 +- lib/librte_eal/bsdapp/eal/eal.c | 9 +- lib/librte_eal/bsdapp/eal/rte_eal_version.map | 1 - lib/librte_eal/common/eal_common_bus.c | 16 +- lib/librte_eal/common/eal_common_dev.c | 28 --- lib/librte_eal/common/eal_common_vdev.c | 245 +++++++++++++++++++++--- lib/librte_eal/common/include/rte_dev.h | 5 - lib/librte_eal/common/include/rte_vdev.h | 26 ++- lib/librte_eal/linuxapp/eal/eal.c | 9 +- lib/librte_eal/linuxapp/eal/rte_eal_version.map | 1 - 20 files changed, 341 insertions(+), 132 deletions(-) -- 2.7.4