---
name: "rte_event_dev_config"
section: "3"
platform: "linux"
package: "dpdk-doc"
version: "24.11.4-0+deb13u1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/rte_event_dev_config"
---

# rte\_event\_dev\_config(3)

## NAME

rte\_event\_dev\_config

## SYNOPSIS

`#include <rte_eventdev.h>`

### Data Fields

uint32\_t **dequeue\_timeout\_ns**\
 int32\_t **nb\_events\_limit**\
 uint8\_t **nb\_event\_queues**\
 uint8\_t **nb\_event\_ports**\
 uint32\_t **nb\_event\_queue\_flows**\
 uint32\_t **nb\_event\_port\_dequeue\_depth**\
 uint32\_t **nb\_event\_port\_enqueue\_depth**\
 uint32\_t **event\_dev\_cfg**\
 uint8\_t **nb\_single\_link\_event\_port\_queues**\
 enum **rte\_event\_dev\_preschedule\_type** **preschedule\_type**\

## Detailed Description

Event device configuration structure

Definition at line **768** of file **rte\_eventdev.h**.

## Field Documentation

### uint32\_t dequeue\_timeout\_ns

**rte\_event\_dequeue\_burst()** timeout on this device. This value should be in the range of **rte\_event\_dev\_info::min\_dequeue\_timeout\_ns** and **rte\_event\_dev\_info::max\_dequeue\_timeout\_ns** returned by **rte\_event\_dev\_info\_get()** The value 0 is allowed, in which case, default dequeue timeout used.

**See also**

**RTE\_EVENT\_DEV\_CFG\_PER\_DEQUEUE\_TIMEOUT**

Definition at line **769** of file **rte\_eventdev.h**.

### int32\_t nb\_events\_limit

In a *closed system* this field is the limit on maximum number of events that can be inflight in the eventdev at a given time. The limit is required to ensure that the finite space in a closed system is not exhausted. The value cannot exceed **rte\_event\_dev\_info::max\_num\_events** returned by **rte\_event\_dev\_info\_get()**.

This value should be set to -1 for *open systems*, that is, those systems returning -1 in **rte\_event\_dev\_info::max\_num\_events**.

**See also**

**rte\_event\_port\_conf.new\_event\_threshold**

Definition at line **777** of file **rte\_eventdev.h**.

### uint8\_t nb\_event\_queues

Number of event queues to configure on this device. This value *includes* any single-link queue-port pairs to be used. This value cannot exceed **rte\_event\_dev\_info::max\_event\_queues** + **rte\_event\_dev\_info::max\_single\_link\_event\_port\_queue\_pairs** returned by **rte\_event\_dev\_info\_get()**. The number of non-single-link queues i.e. this value less *nb\_single\_link\_event\_port\_queues* in this struct, cannot exceed **rte\_event\_dev\_info::max\_event\_queues**

Definition at line **790** of file **rte\_eventdev.h**.

### uint8\_t nb\_event\_ports

Number of event ports to configure on this device. This value *includes* any single-link queue-port pairs to be used. This value cannot exceed **rte\_event\_dev\_info::max\_event\_ports** + **rte\_event\_dev\_info::max\_single\_link\_event\_port\_queue\_pairs** returned by **rte\_event\_dev\_info\_get()**. The number of non-single-link ports i.e. this value less *nb\_single\_link\_event\_port\_queues* in this struct, cannot exceed **rte\_event\_dev\_info::max\_event\_ports**

Definition at line **800** of file **rte\_eventdev.h**.

### uint32\_t nb\_event\_queue\_flows

Max number of flows needed for a single event queue on this device. This value cannot exceed **rte\_event\_dev\_info::max\_event\_queue\_flows** returned by **rte\_event\_dev\_info\_get()**

Definition at line **810** of file **rte\_eventdev.h**.

### uint32\_t nb\_event\_port\_dequeue\_depth

Max number of events that can be dequeued at a time from an event port on this device. This value cannot exceed **rte\_event\_dev\_info::max\_event\_port\_dequeue\_depth** returned by **rte\_event\_dev\_info\_get()**. Ignored when device is not RTE\_EVENT\_DEV\_CAP\_BURST\_MODE capable.

**See also**

**rte\_event\_port\_setup()** **rte\_event\_dequeue\_burst()**

Definition at line **815** of file **rte\_eventdev.h**.

### uint32\_t nb\_event\_port\_enqueue\_depth

Maximum number of events can be enqueued at a time to an event port on this device. This value cannot exceed **rte\_event\_dev\_info::max\_event\_port\_enqueue\_depth** returned by **rte\_event\_dev\_info\_get()**. Ignored when device is not RTE\_EVENT\_DEV\_CAP\_BURST\_MODE capable.

**See also**

**rte\_event\_port\_setup()** **rte\_event\_enqueue\_burst()**

Definition at line **822** of file **rte\_eventdev.h**.

### uint32\_t event\_dev\_cfg

Event device config flags(RTE\_EVENT\_DEV\_CFG\_)

Definition at line **829** of file **rte\_eventdev.h**.

### uint8\_t nb\_single\_link\_event\_port\_queues

Number of event ports and queues that will be singly-linked to each other. These are a subset of the overall event ports and queues; this value cannot exceed *nb\_event\_ports* or *nb\_event\_queues*. If the device has ports and queues that are optimized for single-link usage, this field is a hint for how many to allocate; otherwise, regular event ports and queues will be used.

Definition at line **831** of file **rte\_eventdev.h**.

### enum rte\_event\_dev\_preschedule\_type preschedule\_type

Event pre-schedule type to use across the event device, if supported.

**See also**

**RTE\_EVENT\_DEV\_CAP\_EVENT\_PRESCHEDULE**

**RTE\_EVENT\_DEV\_CAP\_EVENT\_PRESCHEDULE\_ADAPTIVE**

Definition at line **839** of file **rte\_eventdev.h**.

## Author

Generated automatically by Doxygen for DPDK from the source code.
