Now that PCI bus handles the scan/probe methods, independent calls to PCI scan and probe can be removed from the code. PCI device and driver list are also removed.
rte_device and rte_driver list continue to exist. As does the VDEV lists. Signed-off-by: Shreyansh Jain <shreyansh.j...@nxp.com> --- lib/librte_eal/bsdapp/eal/eal_pci.c | 15 --------- lib/librte_eal/bsdapp/eal/rte_eal_version.map | 3 -- lib/librte_eal/common/eal_common_pci.c | 43 ------------------------- lib/librte_eal/common/eal_private.h | 10 ------ lib/librte_eal/common/include/rte_pci.h | 19 ----------- lib/librte_eal/linuxapp/eal/eal_pci.c | 16 --------- lib/librte_eal/linuxapp/eal/rte_eal_version.map | 3 -- 7 files changed, 109 deletions(-) diff --git a/lib/librte_eal/bsdapp/eal/eal_pci.c b/lib/librte_eal/bsdapp/eal/eal_pci.c index ab04408..5344f9a 100644 --- a/lib/librte_eal/bsdapp/eal/eal_pci.c +++ b/lib/librte_eal/bsdapp/eal/eal_pci.c @@ -680,21 +680,6 @@ rte_eal_pci_ioport_unmap(struct rte_pci_ioport *p) return ret; } -/* Init the PCI EAL subsystem */ -int -rte_eal_pci_init(void) -{ - /* for debug purposes, PCI can be disabled */ - if (internal_config.no_pci) - return 0; - - if (rte_eal_pci_scan(NULL) < 0) { - RTE_LOG(ERR, EAL, "%s(): Cannot scan PCI bus\n", __func__); - return -1; - } - return 0; -} - struct rte_bus pci_bus = { .scan = rte_eal_pci_scan, .match = rte_eal_pci_match_default, diff --git a/lib/librte_eal/bsdapp/eal/rte_eal_version.map b/lib/librte_eal/bsdapp/eal/rte_eal_version.map index 23fc1c1..0d2c8ec 100644 --- a/lib/librte_eal/bsdapp/eal/rte_eal_version.map +++ b/lib/librte_eal/bsdapp/eal/rte_eal_version.map @@ -6,8 +6,6 @@ DPDK_2.0 { eal_parse_sysfs_value; eal_timer_source; lcore_config; - pci_device_list; - pci_driver_list; per_lcore__lcore_id; per_lcore__rte_errno; rte_calloc; @@ -41,7 +39,6 @@ DPDK_2.0 { rte_eal_mp_wait_lcore; rte_eal_parse_devargs_str; rte_eal_pci_dump; - rte_eal_pci_probe; rte_eal_pci_probe_one; rte_eal_pci_register; rte_eal_pci_scan; diff --git a/lib/librte_eal/common/eal_common_pci.c b/lib/librte_eal/common/eal_common_pci.c index 4093746..6d7b53e 100644 --- a/lib/librte_eal/common/eal_common_pci.c +++ b/lib/librte_eal/common/eal_common_pci.c @@ -83,11 +83,6 @@ #include "eal_private.h" -struct pci_driver_list pci_driver_list = - TAILQ_HEAD_INITIALIZER(pci_driver_list); -struct pci_device_list pci_device_list = - TAILQ_HEAD_INITIALIZER(pci_device_list); - #define SYSFS_PCI_DEVICES "/sys/bus/pci/devices" const char *pci_get_sysfs_path(void) @@ -464,44 +459,6 @@ rte_eal_pci_detach(const struct rte_pci_addr *addr) return -1; } -/* - * Scan the content of the PCI bus, and call the probe() function for - * all registered drivers that have a matching entry in its id_table - * for discovered devices. - */ -int -rte_eal_pci_probe(void) -{ - struct rte_pci_device *dev = NULL; - struct rte_devargs *devargs; - int probe_all = 0; - int ret = 0; - - if (rte_eal_devargs_type_count(RTE_DEVTYPE_WHITELISTED_PCI) == 0) - probe_all = 1; - - TAILQ_FOREACH(dev, &pci_device_list, next) { - - /* set devargs in PCI structure */ - devargs = pci_devargs_lookup(dev); - if (devargs != NULL) - dev->device.devargs = devargs; - - /* probe all or only whitelisted devices */ - if (probe_all) - ret = pci_probe_all_drivers(NULL, dev); - else if (devargs != NULL && - devargs->type == RTE_DEVTYPE_WHITELISTED_PCI) - ret = pci_probe_all_drivers(NULL, dev); - if (ret < 0) - rte_exit(EXIT_FAILURE, "Requested device " PCI_PRI_FMT - " cannot be used\n", dev->addr.domain, dev->addr.bus, - dev->addr.devid, dev->addr.function); - } - - return 0; -} - int rte_eal_pci_probe_default(struct rte_driver *driver, struct rte_device *device) { diff --git a/lib/librte_eal/common/eal_private.h b/lib/librte_eal/common/eal_private.h index e006d95..06ec172 100644 --- a/lib/librte_eal/common/eal_private.h +++ b/lib/librte_eal/common/eal_private.h @@ -108,16 +108,6 @@ int rte_eal_timer_init(void); */ int rte_eal_log_init(const char *id, int facility); -/** - * Init the PCI infrastructure - * - * This function is private to EAL. - * - * @return - * 0 on success, negative on error - */ -int rte_eal_pci_init(void); - struct rte_pci_driver; struct rte_pci_device; diff --git a/lib/librte_eal/common/include/rte_pci.h b/lib/librte_eal/common/include/rte_pci.h index c0a0c6a..95e6656 100644 --- a/lib/librte_eal/common/include/rte_pci.h +++ b/lib/librte_eal/common/include/rte_pci.h @@ -86,12 +86,6 @@ extern "C" { #include <rte_interrupts.h> #include <rte_dev.h> -TAILQ_HEAD(pci_device_list, rte_pci_device); /**< PCI devices in D-linked Q. */ -TAILQ_HEAD(pci_driver_list, rte_pci_driver); /**< PCI drivers in D-linked Q. */ - -extern struct pci_driver_list pci_driver_list; /**< Global list of PCI drivers. */ -extern struct pci_device_list pci_device_list; /**< Global list of PCI devices. */ - /** Pathname of PCI devices directory. */ const char *pci_get_sysfs_path(void); @@ -390,19 +384,6 @@ rte_eal_pci_match_default(struct rte_driver *drv, struct rte_device *dev); /** - * Probe the PCI bus for registered drivers. - * - * Scan the content of the PCI bus, and call the probe() function for - * all registered drivers that have a matching entry in its id_table - * for discovered devices. - * - * @return - * - 0 on success. - * - Negative on error. - */ -int rte_eal_pci_probe(void); - -/** * Map the PCI device resources in user space virtual memory address * * Note that driver should not call this function when flag diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c b/lib/librte_eal/linuxapp/eal/eal_pci.c index de4ed86..a79b47c 100644 --- a/lib/librte_eal/linuxapp/eal/eal_pci.c +++ b/lib/librte_eal/linuxapp/eal/eal_pci.c @@ -765,22 +765,6 @@ rte_eal_pci_ioport_unmap(struct rte_pci_ioport *p) return ret; } -/* Init the PCI EAL subsystem */ -int -rte_eal_pci_init(void) -{ - /* for debug purposes, PCI can be disabled */ - if (internal_config.no_pci) - return 0; - - if (rte_eal_pci_scan(NULL) < 0) { - RTE_LOG(ERR, EAL, "%s(): Cannot scan PCI bus\n", __func__); - return -1; - } - - return 0; -} - struct rte_bus pci_bus = { .scan = rte_eal_pci_scan, .match = rte_eal_pci_match_default, diff --git a/lib/librte_eal/linuxapp/eal/rte_eal_version.map b/lib/librte_eal/linuxapp/eal/rte_eal_version.map index c873a7f..48e847c 100644 --- a/lib/librte_eal/linuxapp/eal/rte_eal_version.map +++ b/lib/librte_eal/linuxapp/eal/rte_eal_version.map @@ -6,8 +6,6 @@ DPDK_2.0 { eal_parse_sysfs_value; eal_timer_source; lcore_config; - pci_device_list; - pci_driver_list; per_lcore__lcore_id; per_lcore__rte_errno; rte_calloc; @@ -41,7 +39,6 @@ DPDK_2.0 { rte_eal_mp_wait_lcore; rte_eal_parse_devargs_str; rte_eal_pci_dump; - rte_eal_pci_probe; rte_eal_pci_probe_one; rte_eal_pci_register; rte_eal_pci_scan; -- 2.7.4