DPDK  17.05.2
Data Structures | Macros | Functions
rte_dev.h File Reference
#include <stdio.h>
#include <sys/queue.h>
#include <rte_config.h>
#include <rte_log.h>

Go to the source code of this file.

Data Structures

struct  rte_mem_resource
struct  rte_driver
struct  rte_device

Macros

#define RTE_PMD_REGISTER_KMOD_DEP(name, str)

Functions

int rte_vdev_init (const char *name, const char *args)
int rte_vdev_uninit (const char *name)
int rte_eal_dev_attach (const char *name, const char *devargs)
int rte_eal_dev_detach (const char *name)

Detailed Description

RTE PMD Driver Registration Interface

This file manages the list of device drivers.

Definition in file rte_dev.h.

Macro Definition Documentation

#define RTE_PMD_REGISTER_KMOD_DEP (   name,
  str 
)
Value:
static const char DRV_EXP_TAG(name, kmod_dep_export)[] \
__attribute__((used)) = str

Advertise the list of kernel modules required to run this driver

This string lists the kernel modules required for the devices associated to a PMD. The format of each line of the string is: "<device-pattern> <kmod-expression>".

The possible formats for the device pattern are: "*" all devices supported by this driver "pci:*" all PCI devices supported by this driver "pci:v8086:d*:sv*:sd*" all PCI devices supported by this driver whose vendor id is 0x8086.

The format of the kernel modules list is a parenthesed expression containing logical-and (&) and logical-or (|).

The device pattern and the kmod expression are separated by a space.

Example:

  • "* igb_uio | uio_pci_generic | vfio"

Definition at line 231 of file rte_dev.h.

Function Documentation

int rte_vdev_init ( const char *  name,
const char *  args 
)

Initialize a driver specified by name.

Parameters
nameThe pointer to a driver name to be initialized.
argsThe pointer to arguments used by driver initialization.
Returns
0 on success, negative on error
int rte_vdev_uninit ( const char *  name)

Uninitalize a driver specified by name.

Parameters
nameThe pointer to a driver name to be initialized.
Returns
0 on success, negative on error
int rte_eal_dev_attach ( const char *  name,
const char *  devargs 
)

Attach a device to a registered driver.

Parameters
nameThe device name, that refers to a pci device (or some private way of designating a vdev device). Based on this device name, eal will identify a driver capable of handling it and pass it to the driver probing function.
devargsDevice arguments to be passed to the driver.
Returns
0 on success, negative on error.
int rte_eal_dev_detach ( const char *  name)

Detach a device from its driver.

Parameters
nameSame description as for rte_eal_dev_attach(). Here, eal will call the driver detaching function.
Returns
0 on success, negative on error.