This patchset moves the PCI bus out of the EAL to the drivers/bus subdirectory.
Almost all dependencies have been worked out, only remains KNI to be made fully independent from the PCI bus in its lib section. This patchset includes a patch disabling it, that should be removed before integration, once all dependencies have been fixed. The pmdinfogen app has been moved to the drivers subdirectory. This allows using the dependency syntax from the build system, as this app also depends on the PCI bus. The dependency graph is as follows: drivers/bus/pci | + drivers/pmdinfogen | + drivers/net The compilation has been tested on debian 8, Redhat 7.2 and FreeBSD 10.3 This patchset depends on: eal: complete attach / detach support http://dpdk.org/ml/archives/dev/2017-June/067057.html http://dpdk.org/dev/patchwork/patch/24969/ v1 -> v2: This patchet now depends also on the eventdev PCI dependency fix: [PATCH v2 0/4] Remove PCI and VDEV dependency from eventdev library http://dpdk.org/ml/archives/dev/2017-June/067402.html http://dpdk.org/dev/patchwork/patch/25092/ * Fixes a few PCI dependency left * While wholes files are moved, fixed a few checkpatch warnings to start anew. * Updated eventdev and cryptodev build dependencies People who want to evaluate / test the whole system can clone: https://github.com/grivet/dpdk/tree/master-net v3: Further checkpatch fixes have been applied upon the new bus. Both cryptodev and pdump have been fixed. The patches disabling them have been removed. This patchset now depends on both the cryptodev and pdump dependency fixes: [dpdk-dev] [PATCH 00/12] Remove cryptodev driver http://dpdk.org/ml/archives/dev/2017-May/066382.html [dpdk-dev] [PATCH] pdump: remove unnecessary header file http://dpdk.org/ml/archives/dev/2017-June/067785.html My tree has been updated to follow the latest state of the patchsets currently live on the ML: https://github.com/grivet/dpdk/tree/master-net Gaetan Rivet (9): kni: disabled by default eal: expose rte_eal_using_phys_addrs ethdev: remove useless PCI dependency bus: properly include rte_debug pmdinfogen: move to drivers subdirectory bus/pci: introduce pci bus bus/pci: follow checkpatch drivers: update eventdev dependencies drivers: update cryptodev dependencies GNUmakefile | 2 +- MAINTAINERS | 2 +- buildtools/Makefile | 36 -- buildtools/pmdinfogen/Makefile | 47 -- buildtools/pmdinfogen/pmdinfogen.c | 422 -------------- buildtools/pmdinfogen/pmdinfogen.h | 125 ---- config/common_base | 10 + config/common_linuxapp | 2 +- drivers/Makefile | 7 +- drivers/bus/Makefile | 2 + drivers/bus/pci/Makefile | 60 ++ drivers/bus/pci/bsd/Makefile | 32 ++ drivers/bus/pci/bsd/rte_bus_pci_version.map | 21 + drivers/bus/pci/bsd/rte_pci.c | 671 ++++++++++++++++++++++ drivers/bus/pci/include/rte_pci.h | 656 +++++++++++++++++++++ drivers/bus/pci/linux/Makefile | 37 ++ drivers/bus/pci/linux/rte_bus_pci_version.map | 21 + drivers/bus/pci/linux/rte_pci.c | 722 +++++++++++++++++++++++ drivers/bus/pci/linux/rte_pci_init.h | 97 ++++ drivers/bus/pci/linux/rte_pci_uio.c | 571 +++++++++++++++++++ drivers/bus/pci/linux/rte_pci_vfio.c | 684 ++++++++++++++++++++++ drivers/bus/pci/linux/rte_vfio_mp_sync.c | 424 ++++++++++++++ drivers/bus/pci/private.h | 169 ++++++ drivers/bus/pci/rte_pci_common.c | 601 ++++++++++++++++++++ drivers/bus/pci/rte_pci_common_uio.c | 234 ++++++++ drivers/pmdinfogen/Makefile | 47 ++ drivers/pmdinfogen/pmdinfogen.c | 422 ++++++++++++++ drivers/pmdinfogen/pmdinfogen.h | 125 ++++ lib/librte_eal/bsdapp/eal/Makefile | 3 - lib/librte_eal/bsdapp/eal/eal.c | 1 - lib/librte_eal/bsdapp/eal/eal_pci.c | 672 ---------------------- lib/librte_eal/bsdapp/eal/rte_eal_version.map | 15 - lib/librte_eal/common/Makefile | 2 +- lib/librte_eal/common/eal_common_bus.c | 1 + lib/librte_eal/common/eal_common_pci.c | 603 -------------------- lib/librte_eal/common/eal_common_pci_uio.c | 233 -------- lib/librte_eal/common/eal_private.h | 138 ----- lib/librte_eal/common/include/rte_pci.h | 601 -------------------- lib/librte_eal/linuxapp/eal/Makefile | 12 +- lib/librte_eal/linuxapp/eal/eal.c | 1 - lib/librte_eal/linuxapp/eal/eal_interrupts.c | 1 - lib/librte_eal/linuxapp/eal/eal_memory.c | 3 +- lib/librte_eal/linuxapp/eal/eal_pci.c | 723 ------------------------ lib/librte_eal/linuxapp/eal/eal_pci_init.h | 97 ---- lib/librte_eal/linuxapp/eal/eal_pci_uio.c | 567 ------------------- lib/librte_eal/linuxapp/eal/eal_pci_vfio.c | 674 ---------------------- lib/librte_eal/linuxapp/eal/eal_vfio_mp_sync.c | 424 -------------- lib/librte_eal/linuxapp/eal/rte_eal_version.map | 16 +- lib/librte_eal/linuxapp/eal/rte_memory_linux.h | 64 +++ lib/librte_ether/rte_ethdev.c | 1 - mk/rte.app.mk | 2 + 51 files changed, 5687 insertions(+), 5416 deletions(-) delete mode 100644 buildtools/Makefile delete mode 100644 buildtools/pmdinfogen/Makefile delete mode 100644 buildtools/pmdinfogen/pmdinfogen.c delete mode 100644 buildtools/pmdinfogen/pmdinfogen.h create mode 100644 drivers/bus/pci/Makefile create mode 100644 drivers/bus/pci/bsd/Makefile create mode 100644 drivers/bus/pci/bsd/rte_bus_pci_version.map create mode 100644 drivers/bus/pci/bsd/rte_pci.c create mode 100644 drivers/bus/pci/include/rte_pci.h create mode 100644 drivers/bus/pci/linux/Makefile create mode 100644 drivers/bus/pci/linux/rte_bus_pci_version.map create mode 100644 drivers/bus/pci/linux/rte_pci.c create mode 100644 drivers/bus/pci/linux/rte_pci_init.h create mode 100644 drivers/bus/pci/linux/rte_pci_uio.c create mode 100644 drivers/bus/pci/linux/rte_pci_vfio.c create mode 100644 drivers/bus/pci/linux/rte_vfio_mp_sync.c create mode 100644 drivers/bus/pci/private.h create mode 100644 drivers/bus/pci/rte_pci_common.c create mode 100644 drivers/bus/pci/rte_pci_common_uio.c create mode 100644 drivers/pmdinfogen/Makefile create mode 100644 drivers/pmdinfogen/pmdinfogen.c create mode 100644 drivers/pmdinfogen/pmdinfogen.h delete mode 100644 lib/librte_eal/bsdapp/eal/eal_pci.c delete mode 100644 lib/librte_eal/common/eal_common_pci.c delete mode 100644 lib/librte_eal/common/eal_common_pci_uio.c delete mode 100644 lib/librte_eal/common/include/rte_pci.h delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci.c delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci_init.h delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci_uio.c delete mode 100644 lib/librte_eal/linuxapp/eal/eal_pci_vfio.c delete mode 100644 lib/librte_eal/linuxapp/eal/eal_vfio_mp_sync.c create mode 100644 lib/librte_eal/linuxapp/eal/rte_memory_linux.h -- 2.1.4