API Reference Manual 1.51.0
Loading...
Searching...
No Matches
odp_pktio_capability_t Struct Reference

Packet IO capabilities. More...

#include <packet_io_types.h>

Collaboration diagram for odp_pktio_capability_t:
[legend]

Data Fields

uint32_t max_input_queues
 Maximum number of input queues.
 
uint32_t min_input_queue_size
 Minimum input queue size.
 
uint32_t max_input_queue_size
 Maximum input queue size.
 
uint32_t max_output_queues
 Maximum number of output queues.
 
uint32_t min_output_queue_size
 Minimum output queue size.
 
uint32_t max_output_queue_size
 Maximum output queue size.
 
odp_pktio_config_t config
 Supported pktio configuration options.
 
odp_pktio_set_op_t set_op
 Supported set operations.
 
odp_pktin_vector_capability_t vector
 Packet input vector capability.
 
odp_lso_capability_t lso
 LSO capabilities.
 
odp_packet_ref_types_t packet_ref
 Supported packet reference types.
 
struct { 
 
   odp_bool_t   equal 
 Equal maximum frame length for both packet input and output. More...
 
   uint32_t   min_input 
 Minimum valid value for 'maxlen_input'. More...
 
   uint32_t   max_input 
 Maximum valid value for 'maxlen_input'. More...
 
   uint32_t   min_output 
 Minimum valid value for 'maxlen_output'. More...
 
   uint32_t   max_output 
 Maximum valid value for 'maxlen_output'. More...
 
maxlen 
 Supported frame lengths for odp_pktio_maxlen_set()
 
uint64_t max_tx_aging_tmo_ns
 Max Tx aging timeout in nano seconds supported when packet aging feature is supported.
 
struct { 
 
   odp_bool_t   queue_type_sched 
 Scheduled queue support. More...
 
   odp_bool_t   queue_type_plain 
 Plain queue support. More...
 
   uint32_t   mode_event: 1 
 Packet transmit completion mode ODP_PACKET_TX_COMPL_EVENT support. More...
 
   uint32_t   mode_poll: 1 
 Packet transmit completion mode ODP_PACKET_TX_COMPL_POLL support. More...
 
   uint32_t   max_compl_id 
 Maximum supported completion ID value. More...
 
tx_compl 
 Supported packet Tx completion options.
 
struct { 
 
   uint32_t   dont_free: 1 
 Packet free control option ODP_PACKET_FREE_CTRL_DONT_FREE support with odp_packet_free_ctrl_set(). More...
 
free_ctrl 
 Supported packet free control options.
 
odp_reass_capability_t reassembly
 Packet input reassembly capability.
 
odp_pktio_stats_capability_t stats
 Statistics counters capabilities.
 
struct { 
 
   uint32_t   pause_rx: 1 
 Reception of traditional Ethernet pause frames. More...
 
   uint32_t   pfc_rx: 1 
 Reception of PFC frames. More...
 
   uint32_t   pause_tx: 1 
 Generation of traditional Ethernet pause frames. More...
 
   uint32_t   pfc_tx: 1 
 Generation of PFC frames. More...
 
flow_control 
 Supported flow control modes.
 

Detailed Description

Packet IO capabilities.

Note that interface capabilities may differ between packet output modes. For example, LSO may not be supported in ODP_PKTOUT_MODE_TM mode, while it is supported in ODP_PKTOUT_MODE_DIRECT mode.

Examples
ipsec_api/odp_ipsec.c, odp_bench_pktio_sp.c, odp_classifier.c, odp_dmafwd.c, odp_ipsecfwd.c, odp_l2fwd.c, odp_l2fwd_perf.c, odp_l3fwd.c, odp_packet_dump.c, odp_packet_gen.c, odp_ping.c, odp_pktio_ordered.c, odp_sched_pktio.c, odp_switch.c, and odp_sysinfo.c.

Definition at line 1027 of file api/spec/packet_io_types.h.

Field Documentation

◆ max_input_queues

uint32_t odp_pktio_capability_t::max_input_queues

Maximum number of input queues.

Value does not exceed ODP_PKTIN_MAX_QUEUES.

Examples
odp_bench_pktio_sp.c, odp_dmafwd.c, odp_ipsecfwd.c, odp_l2fwd.c, odp_l2fwd_perf.c, odp_l3fwd.c, odp_packet_gen.c, odp_pktio_ordered.c, odp_sched_pktio.c, odp_switch.c, and odp_sysinfo.c.

Definition at line 1031 of file api/spec/packet_io_types.h.

◆ min_input_queue_size

uint32_t odp_pktio_capability_t::min_input_queue_size

Minimum input queue size.

Zero if configuring queue size is not supported.

Examples
odp_sysinfo.c.

Definition at line 1036 of file api/spec/packet_io_types.h.

◆ max_input_queue_size

uint32_t odp_pktio_capability_t::max_input_queue_size

Maximum input queue size.

Zero if configuring queue size is not supported.

Examples
odp_sysinfo.c.

Definition at line 1041 of file api/spec/packet_io_types.h.

◆ max_output_queues

uint32_t odp_pktio_capability_t::max_output_queues

Maximum number of output queues.

Value does not exceed ODP_PKTOUT_MAX_QUEUES.

Examples
odp_bench_pktio_sp.c, odp_classifier.c, odp_dmafwd.c, odp_ipsecfwd.c, odp_l2fwd.c, odp_l2fwd_perf.c, odp_l3fwd.c, odp_packet_gen.c, odp_pktio_ordered.c, odp_sched_pktio.c, odp_switch.c, and odp_sysinfo.c.

Definition at line 1046 of file api/spec/packet_io_types.h.

◆ min_output_queue_size

uint32_t odp_pktio_capability_t::min_output_queue_size

Minimum output queue size.

Zero if configuring queue size is not supported.

Examples
odp_sysinfo.c.

Definition at line 1051 of file api/spec/packet_io_types.h.

◆ max_output_queue_size

uint32_t odp_pktio_capability_t::max_output_queue_size

Maximum output queue size.

Zero if configuring queue size is not supported.

Examples
odp_sysinfo.c.

Definition at line 1056 of file api/spec/packet_io_types.h.

◆ config

odp_pktio_config_t odp_pktio_capability_t::config

Supported pktio configuration options.

Examples
ipsec_api/odp_ipsec.c, odp_l2fwd.c, odp_packet_dump.c, odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1059 of file api/spec/packet_io_types.h.

◆ set_op

odp_pktio_set_op_t odp_pktio_capability_t::set_op

Supported set operations.

A bit set to one indicates a supported operation. All other bits are set to zero.

Examples
odp_classifier.c, odp_l2fwd.c, odp_l2fwd_perf.c, odp_packet_gen.c, odp_ping.c, odp_pktio_ordered.c, and odp_sysinfo.c.

Definition at line 1065 of file api/spec/packet_io_types.h.

◆ vector

odp_pktin_vector_capability_t odp_pktio_capability_t::vector

Packet input vector capability.

Examples
odp_l2fwd.c, and odp_sysinfo.c.

Definition at line 1068 of file api/spec/packet_io_types.h.

◆ lso

odp_lso_capability_t odp_pktio_capability_t::lso

LSO capabilities.

Examples
odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1071 of file api/spec/packet_io_types.h.

◆ packet_ref

odp_packet_ref_types_t odp_pktio_capability_t::packet_ref

Supported packet reference types.

Types of packet references and referenced packets that can be consumed by the pktio. If a bit is not set for a packet type, then packets of that type may be sent only if the pktout supports the 'dont_free' option and the option is set for the packet.

Examples
odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1080 of file api/spec/packet_io_types.h.

◆ equal

odp_bool_t odp_pktio_capability_t::equal

Equal maximum frame length for both packet input and output.

When set, the same maximum frame length value has to be used for both input and output directions.

Examples
odp_sysinfo.c.

Definition at line 1090 of file api/spec/packet_io_types.h.

◆ min_input

uint32_t odp_pktio_capability_t::min_input

Minimum valid value for 'maxlen_input'.

Examples
odp_l2fwd.c, odp_l2fwd_perf.c, odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1092 of file api/spec/packet_io_types.h.

◆ max_input

uint32_t odp_pktio_capability_t::max_input

Maximum valid value for 'maxlen_input'.

Examples
odp_l2fwd.c, odp_l2fwd_perf.c, odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1094 of file api/spec/packet_io_types.h.

◆ min_output

uint32_t odp_pktio_capability_t::min_output

Minimum valid value for 'maxlen_output'.

Examples
odp_l2fwd.c, odp_l2fwd_perf.c, odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1096 of file api/spec/packet_io_types.h.

◆ max_output

uint32_t odp_pktio_capability_t::max_output

Maximum valid value for 'maxlen_output'.

Examples
odp_l2fwd.c, odp_l2fwd_perf.c, odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1098 of file api/spec/packet_io_types.h.

◆ [struct]

struct { ... } odp_pktio_capability_t::maxlen

Supported frame lengths for odp_pktio_maxlen_set()

A frame length value of zero indicates an unsupported operation.

Examples
odp_l2fwd.c, odp_l2fwd_perf.c, odp_packet_gen.c, and odp_sysinfo.c.

◆ max_tx_aging_tmo_ns

uint64_t odp_pktio_capability_t::max_tx_aging_tmo_ns

Max Tx aging timeout in nano seconds supported when packet aging feature is supported.

0: aging is not supported >0: maximum aging timeout supported in nanoseconds

Examples
odp_sysinfo.c.

Definition at line 1108 of file api/spec/packet_io_types.h.

◆ queue_type_sched

odp_bool_t odp_pktio_capability_t::queue_type_sched

Scheduled queue support.

This defines whether schedule queues are supported for receiving Tx completion events.

0: Scheduled queues are not supported for receiving Tx completion events. 1: Scheduled queues are supported for receiving Tx completion events.

See also
odp_packet_tx_compl_request()
Examples
odp_l2fwd.c, and odp_sysinfo.c.

Definition at line 1122 of file api/spec/packet_io_types.h.

◆ queue_type_plain

odp_bool_t odp_pktio_capability_t::queue_type_plain

Plain queue support.

This defines whether plain queues are supported for receiving Tx completion events.

0: Plain queues are not supported for receiving Tx completion events. 1: Plain queues are supported for receiving Tx completion events.

See also
odp_packet_tx_compl_request()
Examples
odp_sysinfo.c.

Definition at line 1134 of file api/spec/packet_io_types.h.

◆ mode_event

uint32_t odp_pktio_capability_t::mode_event

Packet transmit completion mode ODP_PACKET_TX_COMPL_EVENT support.

Examples
odp_l2fwd.c, and odp_sysinfo.c.

Definition at line 1137 of file api/spec/packet_io_types.h.

◆ mode_poll

uint32_t odp_pktio_capability_t::mode_poll

Packet transmit completion mode ODP_PACKET_TX_COMPL_POLL support.

Examples
odp_l2fwd.c, and odp_sysinfo.c.

Definition at line 1140 of file api/spec/packet_io_types.h.

◆ max_compl_id

uint32_t odp_pktio_capability_t::max_compl_id

Maximum supported completion ID value.

Examples
odp_l2fwd.c, and odp_sysinfo.c.

Definition at line 1143 of file api/spec/packet_io_types.h.

◆ dont_free

uint32_t odp_pktio_capability_t::dont_free

Packet free control option ODP_PACKET_FREE_CTRL_DONT_FREE support with odp_packet_free_ctrl_set().

Examples
odp_packet_gen.c, and odp_sysinfo.c.

Definition at line 1153 of file api/spec/packet_io_types.h.

◆ reassembly

odp_reass_capability_t odp_pktio_capability_t::reassembly

Packet input reassembly capability.

Examples
odp_sysinfo.c.

Definition at line 1158 of file api/spec/packet_io_types.h.

◆ stats

odp_pktio_stats_capability_t odp_pktio_capability_t::stats

Statistics counters capabilities.

Examples
odp_sysinfo.c.

Definition at line 1161 of file api/spec/packet_io_types.h.

◆ pause_rx

uint32_t odp_pktio_capability_t::pause_rx

Reception of traditional Ethernet pause frames.

Examples
odp_l2fwd.c, and odp_sysinfo.c.

Definition at line 1166 of file api/spec/packet_io_types.h.

◆ pfc_rx

uint32_t odp_pktio_capability_t::pfc_rx

Reception of PFC frames.

Examples
odp_sysinfo.c.

Definition at line 1169 of file api/spec/packet_io_types.h.

◆ pause_tx

uint32_t odp_pktio_capability_t::pause_tx

Generation of traditional Ethernet pause frames.

Examples
odp_l2fwd.c, and odp_sysinfo.c.

Definition at line 1172 of file api/spec/packet_io_types.h.

◆ pfc_tx

uint32_t odp_pktio_capability_t::pfc_tx

Generation of PFC frames.

Examples
odp_sysinfo.c.

Definition at line 1175 of file api/spec/packet_io_types.h.


The documentation for this struct was generated from the following file: