API Reference Manual  1.45.0
api/spec/packet_io_types.h File Reference

ODP Packet IO types. More...

#include <odp/visibility_begin.h>
#include <odp/api/packet_types.h>
#include <odp/api/packet_io_stats.h>
#include <odp/api/pool_types.h>
#include <odp/api/queue_types.h>
#include <odp/api/reassembly.h>
#include <odp/api/std_types.h>
#include <odp/visibility_end.h>
Include dependency graph for api/spec/packet_io_types.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

union  odp_pktin_hash_proto_t
 Packet input hash protocols. More...
 
struct  odp_pktin_queue_param_ovr_t
 Packet input queue parameters override. More...
 
struct  odp_pktin_vector_config_t
 Packet input vector configuration. More...
 
struct  odp_pktin_queue_param_t
 Packet input queue parameters. More...
 
struct  odp_pktout_queue_param_t
 Packet output queue parameters. More...
 
struct  odp_pktio_param_t
 Packet IO parameters. More...
 
union  odp_pktin_config_opt_t
 Packet input configuration options bit field. More...
 
union  odp_pktout_config_opt_t
 Packet output configuration options bit field. More...
 
struct  odp_pktio_parser_config_t
 Parser configuration. More...
 
struct  odp_pktio_config_t
 Packet IO configuration options. More...
 
union  odp_pktio_set_op_t
 Packet IO set operations. More...
 
struct  odp_lso_capability_t
 Large Send Offload (LSO) capabilities. More...
 
struct  odp_pktin_vector_capability_t
 Packet input vector capabilities. More...
 
struct  odp_pktio_capability_t
 Packet IO capabilities. More...
 
struct  odp_lso_profile_param_t
 LSO profile parameters. More...
 
struct  odp_pktio_info_t
 Packet IO information. More...
 
struct  odp_pktio_link_info_t
 Packet IO link information. More...
 

Macros

#define ODP_LSO_MAX_CUSTOM   8
 Maximum number of custom LSO fields supported by ODP API.
 
Link speed

Packet IO link speeds in Mbps

#define ODP_PKTIO_LINK_SPEED_UNKNOWN   0
 Link speed unknown.
 
#define ODP_PKTIO_LINK_SPEED_10M   10
 Link speed 10 Mbit/s.
 
#define ODP_PKTIO_LINK_SPEED_100M   100
 Link speed 100 Mbit/s.
 
#define ODP_PKTIO_LINK_SPEED_1G   1000
 Link speed 1 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_2_5G   2500
 Link speed 2.5 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_5G   5000
 Link speed 5 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_10G   10000
 Link speed 10 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_20G   20000
 Link speed 20 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_25G   25000
 Link speed 25 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_40G   40000
 Link speed 40 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_50G   50000
 Link speed 50 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_56G   56000
 Link speed 56 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_100G   100000
 Link speed 100 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_200G   200000
 Link speed 200 Gbit/s.
 
#define ODP_PKTIO_LINK_SPEED_400G   400000
 Link speed 400 Gbit/s.
 

Typedefs

typedef enum odp_pktin_mode_t odp_pktin_mode_t
 Packet input mode.
 
typedef enum odp_pktout_mode_t odp_pktout_mode_t
 Packet output mode.
 
typedef union odp_pktin_hash_proto_t odp_pktin_hash_proto_t
 Packet input hash protocols. More...
 
typedef enum odp_pktio_op_mode_t odp_pktio_op_mode_t
 Packet IO operation mode.
 
typedef struct odp_pktin_queue_param_ovr_t odp_pktin_queue_param_ovr_t
 Packet input queue parameters override.
 
typedef struct odp_pktin_vector_config_t odp_pktin_vector_config_t
 Packet input vector configuration.
 
typedef struct odp_pktin_queue_param_t odp_pktin_queue_param_t
 Packet input queue parameters.
 
typedef struct odp_pktout_queue_param_t odp_pktout_queue_param_t
 Packet output queue parameters. More...
 
typedef struct odp_pktio_param_t odp_pktio_param_t
 Packet IO parameters. More...
 
typedef union odp_pktin_config_opt_t odp_pktin_config_opt_t
 Packet input configuration options bit field. More...
 
typedef union odp_pktout_config_opt_t odp_pktout_config_opt_t
 Packet output configuration options bit field. More...
 
typedef struct odp_pktio_parser_config_t odp_pktio_parser_config_t
 Parser configuration.
 
typedef enum odp_pktio_link_pause_t odp_pktio_link_pause_t
 Ethernet flow control modes.
 
typedef struct odp_pktio_config_t odp_pktio_config_t
 Packet IO configuration options. More...
 
typedef union odp_pktio_set_op_t odp_pktio_set_op_t
 Packet IO set operations. More...
 
typedef enum odp_lso_modify_t odp_lso_modify_t
 LSO custom modification options.
 
typedef enum odp_lso_protocol_t odp_lso_protocol_t
 LSO protocol options. More...
 
typedef struct odp_lso_capability_t odp_lso_capability_t
 Large Send Offload (LSO) capabilities.
 
typedef struct odp_pktin_vector_capability_t odp_pktin_vector_capability_t
 Packet input vector capabilities.
 
typedef struct odp_pktio_capability_t odp_pktio_capability_t
 Packet IO capabilities. More...
 
typedef struct odp_lso_profile_param_t odp_lso_profile_param_t
 LSO profile parameters.
 
typedef enum odp_pktio_link_status_t odp_pktio_link_status_t
 Link status.
 
typedef struct odp_pktio_info_t odp_pktio_info_t
 Packet IO information.
 
typedef enum odp_pktio_link_autoneg_t odp_pktio_link_autoneg_t
 Autonegotiation mode.
 
typedef enum odp_pktio_link_duplex_t odp_pktio_link_duplex_t
 Duplex mode.
 
typedef struct odp_pktio_link_info_t odp_pktio_link_info_t
 Packet IO link information.
 

Enumerations

enum  odp_pktin_mode_t { ODP_PKTIN_MODE_DIRECT = 0 , ODP_PKTIN_MODE_SCHED , ODP_PKTIN_MODE_QUEUE , ODP_PKTIN_MODE_DISABLED }
 Packet input mode. More...
 
enum  odp_pktout_mode_t { ODP_PKTOUT_MODE_DIRECT = 0 , ODP_PKTOUT_MODE_QUEUE , ODP_PKTOUT_MODE_TM , ODP_PKTOUT_MODE_DISABLED }
 Packet output mode. More...
 
enum  odp_pktio_op_mode_t { ODP_PKTIO_OP_MT = 0 , ODP_PKTIO_OP_MT_UNSAFE }
 Packet IO operation mode. More...
 
enum  odp_pktio_link_pause_t { ODP_PKTIO_LINK_PAUSE_UNKNOWN = -1 , ODP_PKTIO_LINK_PAUSE_OFF = 0 , ODP_PKTIO_LINK_PAUSE_ON = 1 , ODP_PKTIO_LINK_PFC_ON = 2 }
 Ethernet flow control modes. More...
 
enum  odp_lso_modify_t { ODP_LSO_ADD_SEGMENT_NUM = 0x1 , ODP_LSO_ADD_PAYLOAD_LEN = 0x2 , ODP_LSO_ADD_PAYLOAD_OFFSET = 0x4 }
 LSO custom modification options. More...
 
enum  odp_lso_protocol_t {
  ODP_LSO_PROTO_NONE = 0 , ODP_LSO_PROTO_CUSTOM , ODP_LSO_PROTO_IPV4 , ODP_LSO_PROTO_IPV6 ,
  ODP_LSO_PROTO_TCP_IPV4 , ODP_LSO_PROTO_TCP_IPV6 , ODP_LSO_PROTO_SCTP_IPV4 , ODP_LSO_PROTO_SCTP_IPV6
}
 LSO protocol options. More...
 
enum  odp_pktio_link_status_t { ODP_PKTIO_LINK_STATUS_UNKNOWN = -1 , ODP_PKTIO_LINK_STATUS_DOWN = 0 , ODP_PKTIO_LINK_STATUS_UP = 1 }
 Link status. More...
 
enum  odp_pktio_link_autoneg_t { ODP_PKTIO_LINK_AUTONEG_UNKNOWN = -1 , ODP_PKTIO_LINK_AUTONEG_OFF = 0 , ODP_PKTIO_LINK_AUTONEG_ON = 1 }
 Autonegotiation mode. More...
 
enum  odp_pktio_link_duplex_t { ODP_PKTIO_LINK_DUPLEX_UNKNOWN = -1 , ODP_PKTIO_LINK_DUPLEX_HALF = 0 , ODP_PKTIO_LINK_DUPLEX_FULL = 1 }
 Duplex mode. More...
 

Detailed Description

ODP Packet IO types.

Definition in file api/spec/packet_io_types.h.