|
DPDK
17.11.10
|
Go to the source code of this file.
Data Structures | |
| struct | rte_devargs |
Enumerations | |
| enum | rte_devtype |
Functions | |
| TAILQ_HEAD (rte_devargs_list, rte_devargs) | |
| int | rte_eal_parse_devargs_str (const char *devargs_str, char **drvname, char **drvargs) |
| int | rte_eal_devargs_parse (const char *dev, struct rte_devargs *da) |
| int | rte_eal_devargs_insert (struct rte_devargs *da) |
| int | rte_eal_devargs_add (enum rte_devtype devtype, const char *devargs_str) |
| int | rte_eal_devargs_remove (const char *busname, const char *devname) |
| unsigned int | rte_eal_devargs_type_count (enum rte_devtype devtype) |
| void | rte_eal_devargs_dump (FILE *f) |
Variables | |
| struct rte_devargs_list | devargs_list |
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.
| enum rte_devtype |
Type of generic device
Definition at line 58 of file rte_devargs.h.
| TAILQ_HEAD | ( | rte_devargs_list | , |
| rte_devargs | |||
| ) |
user device double-linked queue type definition
| int rte_eal_parse_devargs_str | ( | const char * | devargs_str, |
| char ** | drvname, | ||
| char ** | drvargs | ||
| ) |
Parse a devargs string.
For PCI devices, the format of arguments string is "PCI_ADDR" or "PCI_ADDR,key=val,key2=val2,...". Examples: "08:00.1", "0000:5:00.0", "04:00.0,arg=val".
For virtual devices, the format of arguments string is "DRIVER_NAME*" or "DRIVER_NAME*,key=val,key2=val2,...". Examples: "net_ring", "net_ring0", "net_pmdAnything,arg=0:arg2=1".
The function parses the arguments string to get driver name and driver arguments.
| devargs_str | The arguments as given by the user. |
| drvname | The pointer to the string to store parsed driver name. |
| drvargs | The pointer to the string to store parsed driver arguments. |
| int rte_eal_devargs_parse | ( | const char * | dev, |
| struct rte_devargs * | da | ||
| ) |
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.
| dev | The device declaration string. |
| da | The devargs structure holding the device information. |
| int rte_eal_devargs_insert | ( | struct rte_devargs * | da | ) |
Insert an rte_devargs in the global list.
| da | The devargs structure to insert. |
| int rte_eal_devargs_add | ( | enum rte_devtype | devtype, |
| const char * | devargs_str | ||
| ) |
Add a device to the user device list
For PCI devices, the format of arguments string is "PCI_ADDR" or "PCI_ADDR,key=val,key2=val2,...". Examples: "08:00.1", "0000:5:00.0", "04:00.0,arg=val".
For virtual devices, the format of arguments string is "DRIVER_NAME*" or "DRIVER_NAME*,key=val,key2=val2,...". Examples: "net_ring", "net_ring0", "net_pmdAnything,arg=0:arg2=1". The validity of the driver name is not checked by this function, it is done when probing the drivers.
| devtype | The type of the device. |
| devargs_str | The arguments as given by the user. |
| int rte_eal_devargs_remove | ( | const char * | busname, |
| const char * | devname | ||
| ) |
Remove a device from the user device list. Its resources are freed. If the devargs cannot be found, nothing happens.
| busname | bus name of the devargs to remove. |
| devname | device name of the devargs to remove. |
| unsigned int rte_eal_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. |
| void rte_eal_devargs_dump | ( | FILE * | f | ) |
This function dumps the list of user device and their arguments.
| f | A pointer to a file for output |
| struct rte_devargs_list devargs_list |
Global list of user devices
1.8.9.1