Go to the source code of this file.
Functions |
struct rte_memzone * | rte_eth_dma_zone_reserve (const struct rte_eth_dev *eth_dev, const char *name, uint16_t queue_id, size_t size, unsigned align, int socket_id) |
int __rte_experimental | rte_eth_switch_domain_alloc (uint16_t *domain_id) |
int __rte_experimental | rte_eth_switch_domain_free (uint16_t domain_id) |
int __rte_experimental | rte_eth_devargs_parse (const char *devargs, struct rte_eth_devargs *eth_devargs) |
int __rte_experimental | rte_eth_dev_create (struct rte_device *device, const char *name, size_t priv_data_size, ethdev_bus_specific_init bus_specific_init, void *bus_init_params, ethdev_init_t ethdev_init, void *init_params) |
int __rte_experimental | rte_eth_dev_destroy (struct rte_eth_dev *ethdev, ethdev_uninit_t ethdev_uninit) |
static int | rte_eth_dev_must_keep_crc (uint64_t rx_offloads) |
Detailed Description
RTE Ethernet Device PMD API
These APIs for the use from Ethernet drivers, user applications shouldn't use them.
Definition in file rte_ethdev_driver.h.
Function Documentation
struct rte_memzone* rte_eth_dma_zone_reserve |
( |
const struct rte_eth_dev * |
eth_dev, |
|
|
const char * |
name, |
|
|
uint16_t |
queue_id, |
|
|
size_t |
size, |
|
|
unsigned |
align, |
|
|
int |
socket_id |
|
) |
| |
|
read |
Create memzone for HW rings. malloc can't be used as the physical address is needed. If the memzone is already created, then this function returns a ptr to the old one.
- Parameters
-
eth_dev | The eth_dev pointer is the address of the rte_eth_dev structure |
name | The name of the memory zone |
queue_id | The index of the queue to add to name |
size | The sizeof of the memory area |
align | Alignment for resulting memzone. Must be a power of 2. |
socket_id | The socket_id argument is the socket identifier in case of NUMA. |
int __rte_experimental rte_eth_switch_domain_alloc |
( |
uint16_t * |
domain_id | ) |
|
- Warning
- EXPERIMENTAL: this API may change without prior notice.
Allocate an unique switch domain identifier.
A pool of switch domain identifiers which can be allocated on request. This will enabled devices which support the concept of switch domains to request a switch domain id which is guaranteed to be unique from other devices running in the same process.
- Parameters
-
domain_id | switch domain identifier parameter to pass back to application |
- Returns
- Negative errno value on error, 0 on success.
int __rte_experimental rte_eth_switch_domain_free |
( |
uint16_t |
domain_id | ) |
|
- Warning
- EXPERIMENTAL: this API may change without prior notice.
Free switch domain.
Return a switch domain identifier to the pool of free identifiers after it is no longer in use by device.
- Parameters
-
domain_id | switch domain identifier to free |
- Returns
- Negative errno value on error, 0 on success.
int __rte_experimental rte_eth_devargs_parse |
( |
const char * |
devargs, |
|
|
struct rte_eth_devargs * |
eth_devargs |
|
) |
| |
- Warning
- EXPERIMENTAL: this API may change without prior notice.
PMD helper function to parse ethdev arguments
- Parameters
-
devargs | device arguments |
eth_devargs | parsed ethdev specific arguments. |
- Returns
- Negative errno value on error, 0 on success.
int __rte_experimental rte_eth_dev_create |
( |
struct rte_device * |
device, |
|
|
const char * |
name, |
|
|
size_t |
priv_data_size, |
|
|
ethdev_bus_specific_init |
bus_specific_init, |
|
|
void * |
bus_init_params, |
|
|
ethdev_init_t |
ethdev_init, |
|
|
void * |
init_params |
|
) |
| |
- Warning
- EXPERIMENTAL: this API may change without prior notice.
PMD helper function for the creation of a new ethdev ports.
- Parameters
-
device | rte_device handle. |
name | port name. |
priv_data_size | size of private data required for port. |
bus_specific_init | port bus specific initialisation callback function |
bus_init_params | port bus specific initialisation parameters |
ethdev_init | device specific port initialization callback function |
init_params | port initialisation parameters |
- Returns
- Negative errno value on error, 0 on success.
int __rte_experimental rte_eth_dev_destroy |
( |
struct rte_eth_dev * |
ethdev, |
|
|
ethdev_uninit_t |
ethdev_uninit |
|
) |
| |
- Warning
- EXPERIMENTAL: this API may change without prior notice.
PMD helper function for cleaing up the resources of a ethdev port on it's destruction.
- Parameters
-
ethdev | ethdev handle of port. |
ethdev_uninit | device specific port un-initialise callback function |
- Returns
- Negative errno value on error, 0 on success.
static int rte_eth_dev_must_keep_crc |
( |
uint64_t |
rx_offloads | ) |
|
|
inlinestatic |
PMD helper function to check if keeping CRC is requested
- Note
- When CRC_STRIP offload flag is removed and default behavior switch to strip CRC, as planned, this helper function is not that useful and will be removed. In PMDs this function will be replaced with check: if (offloads & DEV_RX_OFFLOAD_KEEP_CRC)
- Parameters
-
rx_offloads | offload bits to be applied |
- Returns
- Return positive if keeping CRC is requested, zero if stripping CRC is requested
Definition at line 344 of file rte_ethdev_driver.h.