[dpdk-dev] [PATCH v2 13/14] devargs: generic device types
Gaetan Rivet
gaetan.rivet at 6wind.com
Wed May 24 18:16:48 CEST 2017
Signed-off-by: Gaetan Rivet <gaetan.rivet at 6wind.com>
---
lib/librte_eal/common/eal_common_devargs.c | 4 ++--
lib/librte_eal/common/eal_common_options.c | 13 +++----------
lib/librte_eal/common/eal_common_pci.c | 6 +++---
lib/librte_eal/common/eal_common_vdev.c | 1 -
lib/librte_eal/common/include/rte_devargs.h | 6 +++---
5 files changed, 11 insertions(+), 19 deletions(-)
diff --git a/lib/librte_eal/common/eal_common_devargs.c b/lib/librte_eal/common/eal_common_devargs.c
index 51ffb45..d423125 100644
--- a/lib/librte_eal/common/eal_common_devargs.c
+++ b/lib/librte_eal/common/eal_common_devargs.c
@@ -115,14 +115,14 @@ rte_eal_devargs_add(enum rte_devtype devtype, const char *devargs_str)
ret = snprintf(devargs->name, sizeof(devargs->name), "%s", buf);
if (ret < 0 || ret >= (int)sizeof(devargs->name))
goto fail;
- if (devargs->type == RTE_DEVTYPE_WHITELISTED_PCI) {
+ if (devargs->type == RTE_DEVTYPE_WHITELISTED) {
if (bus->conf.scan_mode == RTE_BUS_SCAN_UNDEFINED) {
bus->conf.scan_mode = RTE_BUS_SCAN_WHITELIST;
} else if (bus->conf.scan_mode == RTE_BUS_SCAN_BLACKLIST) {
fprintf(stderr, "ERROR: incompatible device type and bus scan mode\n");
goto fail;
}
- } else if (devargs->type == RTE_DEVTYPE_BLACKLISTED_PCI) {
+ } else if (devargs->type == RTE_DEVTYPE_BLACKLISTED) {
if (bus->conf.scan_mode == RTE_BUS_SCAN_UNDEFINED) {
bus->conf.scan_mode = RTE_BUS_SCAN_BLACKLIST;
} else if (bus->conf.scan_mode == RTE_BUS_SCAN_WHITELIST) {
diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c
index f470195..075b0ea 100644
--- a/lib/librte_eal/common/eal_common_options.c
+++ b/lib/librte_eal/common/eal_common_options.c
@@ -798,14 +798,14 @@ eal_parse_common_option(int opt, const char *optarg,
switch (opt) {
/* blacklist */
case 'b':
- if (rte_eal_devargs_add(RTE_DEVTYPE_BLACKLISTED_PCI,
+ if (rte_eal_devargs_add(RTE_DEVTYPE_BLACKLISTED,
optarg) < 0) {
return -1;
}
break;
/* whitelist */
case 'w':
- if (rte_eal_devargs_add(RTE_DEVTYPE_WHITELISTED_PCI,
+ if (rte_eal_devargs_add(RTE_DEVTYPE_WHITELISTED,
optarg) < 0) {
return -1;
}
@@ -901,7 +901,7 @@ eal_parse_common_option(int opt, const char *optarg,
break;
case OPT_VDEV_NUM:
- if (rte_eal_devargs_add(RTE_DEVTYPE_VIRTUAL,
+ if (rte_eal_devargs_add(RTE_DEVTYPE_UNDEFINED,
optarg) < 0) {
return -1;
}
@@ -1025,13 +1025,6 @@ eal_check_common_options(struct internal_config *internal_cfg)
return -1;
}
- if (rte_eal_devargs_type_count(RTE_DEVTYPE_WHITELISTED_PCI) != 0 &&
- rte_eal_devargs_type_count(RTE_DEVTYPE_BLACKLISTED_PCI) != 0) {
- RTE_LOG(ERR, EAL, "Options blacklist (-b) and whitelist (-w) "
- "cannot be used at the same time\n");
- return -1;
- }
-
return 0;
}
diff --git a/lib/librte_eal/common/eal_common_pci.c b/lib/librte_eal/common/eal_common_pci.c
index b26ebf0..7c385f4 100644
--- a/lib/librte_eal/common/eal_common_pci.c
+++ b/lib/librte_eal/common/eal_common_pci.c
@@ -229,7 +229,7 @@ rte_pci_probe_one_driver(struct rte_pci_driver *dr,
/* no initialization when blacklisted, return without error */
if (dev->device.devargs != NULL &&
dev->device.devargs->type ==
- RTE_DEVTYPE_BLACKLISTED_PCI) {
+ RTE_DEVTYPE_BLACKLISTED) {
RTE_LOG(INFO, EAL, " Device is blacklisted, not"
" initializing\n");
return 1;
@@ -416,7 +416,7 @@ rte_pci_probe(void)
int probe_all = 0;
int ret = 0;
- if (rte_eal_devargs_type_count(RTE_DEVTYPE_WHITELISTED_PCI) == 0)
+ if (rte_pci_bus.bus.conf.scan_mode != RTE_BUS_SCAN_WHITELIST)
probe_all = 1;
FOREACH_DEVICE_ON_PCIBUS(dev) {
@@ -431,7 +431,7 @@ rte_pci_probe(void)
if (probe_all)
ret = pci_probe_all_drivers(dev);
else if (devargs != NULL &&
- devargs->type == RTE_DEVTYPE_WHITELISTED_PCI)
+ devargs->type == RTE_DEVTYPE_WHITELISTED)
ret = pci_probe_all_drivers(dev);
if (ret < 0) {
RTE_LOG(ERR, EAL, "Requested device " PCI_PRI_FMT
diff --git a/lib/librte_eal/common/eal_common_vdev.c b/lib/librte_eal/common/eal_common_vdev.c
index eab5f9d..fc5e2d2 100644
--- a/lib/librte_eal/common/eal_common_vdev.c
+++ b/lib/librte_eal/common/eal_common_vdev.c
@@ -181,7 +181,6 @@ alloc_devargs(const char *name, const char *args)
if (!devargs)
return NULL;
- devargs->type = RTE_DEVTYPE_VIRTUAL;
devargs->bus = rte_bus_from_name(VIRTUAL_BUS_NAME);
if (args)
devargs->args = strdup(args);
diff --git a/lib/librte_eal/common/include/rte_devargs.h b/lib/librte_eal/common/include/rte_devargs.h
index 6a26d3d..6e9e134 100644
--- a/lib/librte_eal/common/include/rte_devargs.h
+++ b/lib/librte_eal/common/include/rte_devargs.h
@@ -56,9 +56,9 @@ extern "C" {
* Type of generic device
*/
enum rte_devtype {
- RTE_DEVTYPE_WHITELISTED_PCI,
- RTE_DEVTYPE_BLACKLISTED_PCI,
- RTE_DEVTYPE_VIRTUAL,
+ RTE_DEVTYPE_UNDEFINED,
+ RTE_DEVTYPE_WHITELISTED,
+ RTE_DEVTYPE_BLACKLISTED,
};
/**
--
2.1.4
More information about the dev
mailing list