DPDK
18.11.11
|
Go to the source code of this file.
Data Structures | |
struct | rte_devargs |
Macros | |
#define | RTE_EAL_DEVARGS_FOREACH(busname, da) |
Enumerations | |
enum | rte_devtype |
Functions | |
__rte_experimental int | rte_devargs_parse (struct rte_devargs *da, const char *dev) |
__rte_experimental int | rte_devargs_parsef (struct rte_devargs *da, const char *format,...) |
__rte_experimental int | rte_devargs_insert (struct rte_devargs **da) |
__rte_experimental int | rte_devargs_add (enum rte_devtype devtype, const char *devargs_str) |
__rte_experimental int | rte_devargs_remove (struct rte_devargs *devargs) |
__rte_experimental unsigned int | rte_devargs_type_count (enum rte_devtype devtype) |
__rte_experimental void | rte_devargs_dump (FILE *f) |
__rte_experimental struct rte_devargs * | rte_devargs_next (const char *busname, const struct rte_devargs *start) |
RTE devargs: list of devices and their user arguments
This file stores a list of devices and their arguments given by the user when a DPDK application is started. These devices can be PCI devices or virtual devices. These devices are stored at startup in a list of rte_devargs structures.
Definition in file rte_devargs.h.
#define RTE_EAL_DEVARGS_FOREACH | ( | busname, | |
da | |||
) |
Iterate over all rte_devargs for a specific bus.
Definition at line 237 of file rte_devargs.h.
enum rte_devtype |
Type of generic device
Definition at line 31 of file rte_devargs.h.
__rte_experimental int rte_devargs_parse | ( | struct rte_devargs * | da, |
const char * | dev | ||
) |
Parse a device string.
Verify that a bus is capable of handling the device passed in argument. Store which bus will handle the device, its name and the eventual device parameters.
The syntax is:
bus:device_identifier,arg1=val1,arg2=val2
where "bus:" is the bus name followed by any character separator. The bus name is optional. If no bus name is specified, each bus will attempt to recognize the device identifier. The first one to succeed will be used.
Examples:
pci:0000:05.00.0,arg=val 05.00.0,arg=val vdev:net_ring0
da | The devargs structure holding the device information. |
dev | String describing a device. |
__rte_experimental int rte_devargs_parsef | ( | struct rte_devargs * | da, |
const char * | format, | ||
... | |||
) |
Parse a device string.
Verify that a bus is capable of handling the device passed in argument. Store which bus will handle the device, its name and the eventual device parameters.
The device string is built with a printf-like syntax.
The syntax is:
bus:device_identifier,arg1=val1,arg2=val2
where "bus:" is the bus name followed by any character separator. The bus name is optional. If no bus name is specified, each bus will attempt to recognize the device identifier. The first one to succeed will be used.
Examples:
pci:0000:05.00.0,arg=val 05.00.0,arg=val vdev:net_ring0
da | The devargs structure holding the device information. |
format | Format string describing a device. |
__rte_experimental int rte_devargs_insert | ( | struct rte_devargs ** | da | ) |
Insert an rte_devargs in the global list.
da | The devargs structure to insert. If a devargs for the same device is already inserted, it will be updated and returned. It means *da pointer can change. |
__rte_experimental int rte_devargs_add | ( | enum rte_devtype | devtype, |
const char * | devargs_str | ||
) |
Add a device to the user device list See rte_devargs_parse() for details.
devtype | The type of the device. |
devargs_str | The arguments as given by the user. |
__rte_experimental int rte_devargs_remove | ( | struct rte_devargs * | devargs | ) |
Remove a device from the user device list. Its resources are freed. If the devargs cannot be found, nothing happens.
devargs | The instance or a copy of devargs to remove. |
__rte_experimental unsigned int rte_devargs_type_count | ( | enum rte_devtype | devtype | ) |
Count the number of user devices of a specified type
devtype | The type of the devices to counted. |
__rte_experimental void rte_devargs_dump | ( | FILE * | f | ) |
This function dumps the list of user device and their arguments.
f | A pointer to a file for output |
__rte_experimental struct rte_devargs* rte_devargs_next | ( | const char * | busname, |
const struct rte_devargs * | start | ||
) |
Find next rte_devargs matching the provided bus name.
busname | Limit the iteration to devargs related to buses matching this name. Will return any next rte_devargs if NULL. |
start | Starting iteration point. The iteration will start at the first rte_devargs if NULL. |