devargs: make device representation generic
[dpdk.git] / lib / librte_eal / common / include / rte_devargs.h
index 7084ae2..35675fa 100644 (file)
@@ -50,7 +50,7 @@ extern "C" {
 
 #include <stdio.h>
 #include <sys/queue.h>
-#include <rte_pci.h>
+#include <rte_bus.h>
 
 /**
  * Type of generic device
@@ -76,18 +76,10 @@ struct rte_devargs {
        TAILQ_ENTRY(rte_devargs) next;
        /** Type of device. */
        enum rte_devtype type;
-       union {
-               /** Used if type is RTE_DEVTYPE_*_PCI. */
-               struct {
-                       /** PCI location. */
-                       struct rte_pci_addr addr;
-               } pci;
-               /** Used if type is RTE_DEVTYPE_VIRTUAL. */
-               struct {
-                       /** Driver name. */
-                       char drv_name[32];
-               } virtual;
-       };
+       /** Bus handle for the device. */
+       struct rte_bus *bus;
+       /** Name of the device. */
+       char name[RTE_DEV_NAME_MAX_LEN];
        /** Arguments string as given by user or "" for no argument. */
        char *args;
 };
@@ -106,8 +98,8 @@ extern struct rte_devargs_list devargs_list;
  * "04:00.0,arg=val".
  *
  * For virtual devices, the format of arguments string is "DRIVER_NAME*"
- * or "DRIVER_NAME*,key=val,key2=val2,...". Examples: "eth_ring",
- * "eth_ring0", "eth_pmdAnything,arg=0:arg2=1".
+ * 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.
@@ -134,8 +126,8 @@ int rte_eal_parse_devargs_str(const char *devargs_str,
  * "04:00.0,arg=val".
  *
  * For virtual devices, the format of arguments string is "DRIVER_NAME*"
- * or "DRIVER_NAME*,key=val,key2=val2,...". Examples: "eth_ring",
- * "eth_ring0", "eth_pmdAnything,arg=0:arg2=1". The validity of the
+ * 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.
  *