DPDK  24.07.0
Data Structures | Macros | Enumerations
rte_eth_ctrl.h File Reference
#include <stdint.h>
#include <rte_common.h>
#include <rte_ether.h>
#include "rte_flow.h"
#include "rte_ethdev.h"

Go to the source code of this file.

Data Structures

struct  rte_eth_ntuple_filter
 
struct  rte_eth_input_set_conf
 
struct  rte_eth_l2_flow
 
struct  rte_eth_ipv4_flow
 
struct  rte_eth_udpv4_flow
 
struct  rte_eth_tcpv4_flow
 
struct  rte_eth_sctpv4_flow
 
struct  rte_eth_ipv6_flow
 
struct  rte_eth_udpv6_flow
 
struct  rte_eth_tcpv6_flow
 
struct  rte_eth_sctpv6_flow
 
struct  rte_eth_mac_vlan_flow
 
struct  rte_eth_tunnel_flow
 
union  rte_eth_fdir_flow
 
struct  rte_eth_fdir_flow_ext
 
struct  rte_eth_fdir_input
 
struct  rte_eth_fdir_action
 
struct  rte_eth_fdir_filter
 
struct  rte_eth_fdir_masks
 
struct  rte_eth_flex_payload_cfg
 
struct  rte_eth_fdir_flex_mask
 
struct  rte_eth_fdir_flex_conf
 
struct  rte_eth_fdir_info
 
struct  rte_eth_fdir_stats
 

Macros

#define RTE_NTUPLE_FLAGS_DST_IP   0x0001
 
#define RTE_NTUPLE_FLAGS_SRC_IP   0x0002
 
#define RTE_NTUPLE_FLAGS_DST_PORT   0x0004
 
#define RTE_NTUPLE_FLAGS_SRC_PORT   0x0008
 
#define RTE_NTUPLE_FLAGS_PROTO   0x0010
 
#define RTE_NTUPLE_FLAGS_TCP_FLAG   0x0020
 
#define RTE_NTUPLE_TCP_FLAGS_MASK   0x3F
 
#define RTE_ETH_FDIR_MAX_FLEXLEN   16
 
#define RTE_ETH_INSET_SIZE_MAX   128
 

Enumerations

enum  rte_eth_input_set_field
 
enum  rte_filter_input_set_op { , RTE_ETH_INPUT_SET_SELECT, RTE_ETH_INPUT_SET_ADD }
 
enum  rte_eth_fdir_tunnel_type
 
enum  rte_eth_fdir_behavior
 
enum  rte_eth_fdir_status { RTE_ETH_FDIR_NO_REPORT_STATUS = 0, RTE_ETH_FDIR_REPORT_ID, RTE_ETH_FDIR_REPORT_ID_FLEX_4, RTE_ETH_FDIR_REPORT_FLEX_8 }
 
enum  rte_eth_payload_type
 
enum  rte_fdir_mode {
  RTE_FDIR_MODE_NONE = 0, RTE_FDIR_MODE_SIGNATURE, RTE_FDIR_MODE_PERFECT, RTE_FDIR_MODE_PERFECT_MAC_VLAN,
  RTE_FDIR_MODE_PERFECT_TUNNEL
}
 

Detailed Description

Deprecated:

Please use rte_flow API instead of this legacy one.

Ethernet device features and related data structures used by control APIs should be defined in this file.

Definition in file rte_eth_ctrl.h.

Macro Definition Documentation

◆ RTE_NTUPLE_FLAGS_DST_IP

#define RTE_NTUPLE_FLAGS_DST_IP   0x0001

Define all structures for ntuple Filter type.If set, dst_ip is part of ntuple

Definition at line 30 of file rte_eth_ctrl.h.

◆ RTE_NTUPLE_FLAGS_SRC_IP

#define RTE_NTUPLE_FLAGS_SRC_IP   0x0002

If set, src_ip is part of ntuple

Definition at line 31 of file rte_eth_ctrl.h.

◆ RTE_NTUPLE_FLAGS_DST_PORT

#define RTE_NTUPLE_FLAGS_DST_PORT   0x0004

If set, dst_port is part of ntuple

Definition at line 32 of file rte_eth_ctrl.h.

◆ RTE_NTUPLE_FLAGS_SRC_PORT

#define RTE_NTUPLE_FLAGS_SRC_PORT   0x0008

If set, src_port is part of ntuple

Definition at line 33 of file rte_eth_ctrl.h.

◆ RTE_NTUPLE_FLAGS_PROTO

#define RTE_NTUPLE_FLAGS_PROTO   0x0010

If set, protocol is part of ntuple

Definition at line 34 of file rte_eth_ctrl.h.

◆ RTE_NTUPLE_FLAGS_TCP_FLAG

#define RTE_NTUPLE_FLAGS_TCP_FLAG   0x0020

If set, tcp flag is involved

Definition at line 35 of file rte_eth_ctrl.h.

◆ RTE_NTUPLE_TCP_FLAGS_MASK

#define RTE_NTUPLE_TCP_FLAGS_MASK   0x3F

TCP flags filter can match.

Definition at line 48 of file rte_eth_ctrl.h.

◆ RTE_ETH_FDIR_MAX_FLEXLEN

#define RTE_ETH_FDIR_MAX_FLEXLEN   16

Max length of flexbytes.

Definition at line 75 of file rte_eth_ctrl.h.

◆ RTE_ETH_INSET_SIZE_MAX

#define RTE_ETH_INSET_SIZE_MAX   128

Max length of input set.

Definition at line 76 of file rte_eth_ctrl.h.

Enumeration Type Documentation

◆ rte_eth_input_set_field

Input set fields for Flow Director and Hash filters

Definition at line 81 of file rte_eth_ctrl.h.

◆ rte_filter_input_set_op

Filters input set operations

Enumerator
RTE_ETH_INPUT_SET_SELECT 

select input set

RTE_ETH_INPUT_SET_ADD 

add input set entry

Definition at line 137 of file rte_eth_ctrl.h.

◆ rte_eth_fdir_tunnel_type

Tunnel type for flow director.

Definition at line 251 of file rte_eth_ctrl.h.

◆ rte_eth_fdir_behavior

Behavior will be taken if FDIR match

Definition at line 311 of file rte_eth_ctrl.h.

◆ rte_eth_fdir_status

Flow director report status It defines what will be reported if FDIR entry is matched.

Enumerator
RTE_ETH_FDIR_NO_REPORT_STATUS 

Report nothing.

RTE_ETH_FDIR_REPORT_ID 

Only report FD ID.

RTE_ETH_FDIR_REPORT_ID_FLEX_4 

Report FD ID and 4 flex bytes.

RTE_ETH_FDIR_REPORT_FLEX_8 

Report 8 flex bytes.

Definition at line 321 of file rte_eth_ctrl.h.

◆ rte_eth_payload_type

Payload type

Definition at line 377 of file rte_eth_ctrl.h.

◆ rte_fdir_mode

Flow Director setting modes: none, signature or perfect.

Enumerator
RTE_FDIR_MODE_NONE 

Disable FDIR support.

RTE_FDIR_MODE_SIGNATURE 

Enable FDIR signature filter mode.

RTE_FDIR_MODE_PERFECT 

Enable FDIR perfect filter mode.

RTE_FDIR_MODE_PERFECT_MAC_VLAN 

Enable FDIR filter mode - MAC VLAN.

RTE_FDIR_MODE_PERFECT_TUNNEL 

Enable FDIR filter mode - tunnel.

Definition at line 425 of file rte_eth_ctrl.h.