API Reference Manual  1.45.1
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. More...
 
uint32_t min_input_queue_size
 Minimum input queue size. More...
 
uint32_t max_input_queue_size
 Maximum input queue size. More...
 
uint32_t max_output_queues
 Maximum number of output queues. More...
 
uint32_t min_output_queue_size
 Minimum output queue size. More...
 
uint32_t max_output_queue_size
 Maximum output queue size. More...
 
odp_pktio_config_t config
 Supported pktio configuration options.
 
odp_pktio_set_op_t set_op
 Supported set operations. More...
 
odp_pktin_vector_capability_t vector
 Packet input vector capability.
 
odp_lso_capability_t lso
 LSO capabilities.
 
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'.
 
   uint32_t   max_input
 Maximum valid value for 'maxlen_input'.
 
   uint32_t   min_output
 Minimum valid value for 'maxlen_output'.
 
   uint32_t   max_output
 Maximum valid value for 'maxlen_output'.
 
maxlen
 Supported frame lengths for odp_pktio_maxlen_set() More...
 
uint64_t max_tx_aging_tmo_ns
 Max Tx aging timeout in nano seconds supported when packet aging feature is supported. More...
 
struct {
   odp_bool_t   queue_type_sched
 Scheduled queue support. More...
 
   odp_bool_t   queue_type_plain
 Plain queue support. More...
 
   uint32_t   mode_all: 1
 For backwards compatibility, mode_all is synonym of mode_event. More...
 
   uint32_t   mode_event: 1
 Packet transmit completion mode ODP_PACKET_TX_COMPL_EVENT support.
 
   uint32_t   mode_poll: 1
 Packet transmit completion mode ODP_PACKET_TX_COMPL_POLL support.
 
   uint32_t   max_compl_id
 Maximum supported completion ID value.
 
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().
 
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.
 
   uint32_t   pfc_rx: 1
 Reception of PFC frames.
 
   uint32_t   pause_tx: 1
 Generation of traditional Ethernet pause frames.
 
   uint32_t   pfc_tx: 1
 Generation of PFC frames.
 
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_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 931 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_l3fwd.c, odp_packet_gen.c, odp_pktio_ordered.c, odp_sched_pktio.c, odp_switch.c, and odp_sysinfo.c.

Definition at line 935 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 940 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 945 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_l3fwd.c, odp_packet_gen.c, odp_pktio_ordered.c, odp_sched_pktio.c, odp_switch.c, and odp_sysinfo.c.

Definition at line 950 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 955 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 960 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_packet_gen.c, odp_ping.c, odp_pktio_ordered.c, and odp_sysinfo.c.

Definition at line 969 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 985 of file api/spec/packet_io_types.h.

◆ 

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_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 1003 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 1017 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 1029 of file api/spec/packet_io_types.h.

◆ mode_all

uint32_t odp_pktio_capability_t::mode_all

For backwards compatibility, mode_all is synonym of mode_event.

Deprecated:
Use mode_event instead.

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


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