3. Data Structures
Here are the data structures with brief descriptions:
- __FILE
- flexio_dev_cqe64
- flexio_dev_eqe
- flexio_dev_mini_cqe64
- flexio_dev_process_tracer_ctx
- flexio_dev_sqe_seg
- flexio_dev_wqe_atomic_seg
- flexio_dev_wqe_ctrl_seg
- flexio_dev_wqe_datagram_seg
- flexio_dev_wqe_eth_seg
- flexio_dev_wqe_inline_data_seg
- flexio_dev_wqe_inline_send_data_seg
- flexio_dev_wqe_mem_ptr_send_data_seg
- flexio_dev_wqe_rcv_data_seg
- flexio_dev_wqe_rdma_seg
- flexio_dev_wqe_shared_receive_seg
- flexio_dev_wqe_transpose_seg
- flexio_dev_wqe_wait_on_data_data_seg
- flexio_dev_wqe_wait_on_data_seg
- flexio_tracer_msg
- spinlock_s
[ Flex IO SDK dev queue types ]
Describes Flex IO dev CQE.
Public Variables
- __be32 byte_cnt
- __be16 csum_ok
- uint8_t hw_err_syndrome
- __be32 imm_inval_pkey
- uint8_t op_own
- __be32 qpn
- uint8_t qpn24[3]
- __be32 rsvd00[5]
- uint8_t rsvd22[2]
- __be32 rsvd24[2]
- __be32 rsvd40
- __be32 rsvd48
- uint8_t rsvd50
- uint8_t signature
- uint8_t sop_rdrop
- __be32 srqn_uidx
- uint8_t syndrome
- uint8_t vendor_err_synd
- __be16 wqe_counter
Variables
- __be32 flexio_dev_cqe64::byte_cnt [inherited]
0Bh - Byte count.
- __be16 flexio_dev_cqe64::csum_ok [inherited]
05h 16..31 - checksum ok bits.
- uint8_t flexio_dev_cqe64::hw_err_syndrome [inherited]
0Dh 24..31 - HW error syndrome.
- __be32 flexio_dev_cqe64::imm_inval_pkey [inherited]
09h - immediate / invalidate key / pkey
- uint8_t flexio_dev_cqe64::op_own [inherited]
0Fh 0..0 - Ownership bit. 04..07 opcode
- __be32 flexio_dev_cqe64::qpn [inherited]
0Eh - QPN.
- uint8_t flexio_dev_cqe64::qpn24[3] [inherited]
0Eh 0..23 - qpn with 24 bits
- __be32 flexio_dev_cqe64::rsvd00[5] [inherited]
00h..04h - Reserved.
- uint8_t flexio_dev_cqe64::rsvd22[2] [inherited]
05h 0..15 - Reserved.
- __be32 flexio_dev_cqe64::rsvd24[2] [inherited]
06h..07h - Reserved.
- __be32 flexio_dev_cqe64::rsvd40 [inherited]
0Ah - Reserved.
- __be32 flexio_dev_cqe64::rsvd48 [inherited]
0Ch - Reserved.
- uint8_t flexio_dev_cqe64::rsvd50 [inherited]
0Dh 16..23 - reserved.
- uint8_t flexio_dev_cqe64::signature [inherited]
0Fh 8..15 - Signature/validity.
- uint8_t flexio_dev_cqe64::sop_rdrop [inherited]
0Eh 24..31 - send_wqe_opcode/rx_drop_counter
- __be32 flexio_dev_cqe64::srqn_uidx [inherited]
08h - SRQ number or user index.
- uint8_t flexio_dev_cqe64::syndrome [inherited]
0Dh 00..07 - syndrome.
- uint8_t flexio_dev_cqe64::vendor_err_synd [inherited]
0Dh 08..15 - vendor error syndrome.
- __be16 flexio_dev_cqe64::wqe_counter [inherited]
0Fh 16..31 - WQE counter.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev EQE.
Public Variables
- __be32 cqn
- flexio_dev_eqe::@3 event_data
- uint8_t owner
- __be32 rsvd00[6]
- uint8_t rsvd00
- uint8_t rsvd02
- __be16 rsvd3c
- uint8_t rsvd4[28]
- uint8_t signature
- uint8_t sub_type
- uint8_t type
Variables
- __be32 flexio_dev_eqe::cqn [inherited]
18h 24 lsb - CQN.
- flexio_dev_eqe::@3 flexio_dev_eqe::event_data [inherited]
20h - Event data.
- uint8_t flexio_dev_eqe::owner [inherited]
3Fh - Owner.
- __be32 flexio_dev_eqe::rsvd00[6] [inherited]
00h..17h - Reserved.
- uint8_t flexio_dev_eqe::rsvd00 [inherited]
00h - Reserved.
- uint8_t flexio_dev_eqe::rsvd02 [inherited]
02h - Reserved.
- __be16 flexio_dev_eqe::rsvd3c [inherited]
3Ch - Reserved.
- uint8_t flexio_dev_eqe::rsvd4[28] [inherited]
04h..1fh - Reserved.
- uint8_t flexio_dev_eqe::signature [inherited]
3Eh - Signature.
- uint8_t flexio_dev_eqe::sub_type [inherited]
03h - Sub type.
- uint8_t flexio_dev_eqe::type [inherited]
01h - EQE type.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev compressed CQE.
Public Variables
- __be64 mini_cqe[7]
- uint8_t num_and_type
- uint8_t rsvd0[6]
- uint8_t validity_iteration_count
Variables
- __be64 flexio_dev_mini_cqe64::mini_cqe[7] [inherited]
00h..37h mini cqe array.
- uint8_t flexio_dev_mini_cqe64::num_and_type [inherited]
3fh..3fh no' of mini cqes, mini cqe format.
- uint8_t flexio_dev_mini_cqe64::rsvd0[6] [inherited]
38h..3dh mini cqe 7.
- uint8_t flexio_dev_mini_cqe64::validity_iteration_count [inherited]
3eh..3eh validity iteration count.
[ Flex IO SDK message stream ]
Describes Flex IO process trace context. This struct is used for managing different tracers for a DPA process.
Public Variables
- flexio_tracer_streams_data [FLEXIO_MSG_DEV_MAX_STREAMS_AMOUNT] * tracer_ctx
Variables
- flexio_tracer_streams_data [FLEXIO_MSG_DEV_MAX_STREAMS_AMOUNT] * flexio_dev_process_tracer_ctx::tracer_ctx [inherited]
< Process trace contexts.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev send WQE segments. Only one segment can be set at a given time.
Public Variables
- struct flexio_dev_wqe_datagram_seg adres_vector
- struct flexio_dev_wqe_atomic_seg atomic
- struct flexio_dev_wqe_ctrl_seg ctrl
- struct flexio_dev_wqe_eth_seg eth
- struct flexio_dev_wqe_inline_data_seg inline_data
- struct flexio_dev_wqe_inline_send_data_seg inline_send_data
- struct flexio_dev_wqe_mem_ptr_send_data_seg mem_ptr_send_data
- struct flexio_dev_wqe_rdma_seg rdma
- struct flexio_dev_wqe_shared_receive_seg shared_receive
- struct flexio_dev_wqe_transpose_seg transpose
- struct flexio_dev_wqe_wait_on_data_seg wait_on_data
- struct flexio_dev_wqe_wait_on_data_data_seg wait_on_data_data
Variables
- struct flexio_dev_wqe_datagram_segflexio_dev_sqe_seg::adres_vector [inherited]
Datagram
- struct flexio_dev_wqe_atomic_segflexio_dev_sqe_seg::atomic [inherited]
Atomic segment.
- struct flexio_dev_wqe_ctrl_segflexio_dev_sqe_seg::ctrl [inherited]
Control segment.
- struct flexio_dev_wqe_eth_segflexio_dev_sqe_seg::eth [inherited]
Ethernet segment.
- struct flexio_dev_wqe_inline_data_segflexio_dev_sqe_seg::inline_data [inherited]
Inline data segment.
- struct flexio_dev_wqe_inline_send_data_segflexio_dev_sqe_seg::inline_send_data [inherited]
Inline send data segment.
- struct flexio_dev_wqe_mem_ptr_send_data_segflexio_dev_sqe_seg::mem_ptr_send_data [inherited]
Memory pointer send data segment.
- struct flexio_dev_wqe_rdma_segflexio_dev_sqe_seg::rdma [inherited]
RDMA segment.
- struct flexio_dev_wqe_shared_receive_segflexio_dev_sqe_seg::shared_receive [inherited]
Shared receive.
- struct flexio_dev_wqe_transpose_segflexio_dev_sqe_seg::transpose [inherited]
Transpose segment.
- struct flexio_dev_wqe_wait_on_data_segflexio_dev_sqe_seg::wait_on_data [inherited]
wait on data.
- struct flexio_dev_wqe_wait_on_data_data_segflexio_dev_sqe_seg::wait_on_data_data [inherited]
wait on data, data.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE ATOMIC segment.
Public Variables
- __be64 compare_data
- __be64 swap_or_add_data
Variables
- __be64 flexio_dev_wqe_atomic_seg::compare_data [inherited]
02h..03h - Compare operation data.
- __be64 flexio_dev_wqe_atomic_seg::swap_or_add_data [inherited]
00h..01h - Swap or Add operation data.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE control segment.
Public Variables
- __be32 general_id
- __be32 idx_opcode
- __be32 qpn_ds
- __be32 signature_fm_ce_se
Variables
- __be32 flexio_dev_wqe_ctrl_seg::general_id [inherited]
03h - Control general ID.
- __be32 flexio_dev_wqe_ctrl_seg::idx_opcode [inherited]
00h - WQE index and opcode.
- __be32 flexio_dev_wqe_ctrl_seg::qpn_ds [inherited]
01h - QPN and number of data segments.
- __be32 flexio_dev_wqe_ctrl_seg::signature_fm_ce_se [inherited]
02h - Signature, fence mode, completion mode and solicited event.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE Address Vector (Datagram segment) (for UD packets). From infiniband/mlx5dv.h
Public Variables
- __be64 dc_key
- __be32 ext_dqp_dct
- uint8_t fl_mlid
- __be32 grh_gid_fl
- uint8_t hop_limit
- __be32 qkey
- __be32 reserved
- uint8_t reserved0[4]
- uint8_t rgid[16]
- __be16 rlid_sport
- uint8_t rmac[6]
- uint8_t stat_rate_sl
- uint8_t tclass
Variables
- __be64 flexio_dev_wqe_datagram_seg::dc_key [inherited]
0h - DC Access key
- __be32 flexio_dev_wqe_datagram_seg::ext_dqp_dct [inherited]
08h 31 - Address Vector extension exist 23..0 - Destination QP number or DCT
- uint8_t flexio_dev_wqe_datagram_seg::fl_mlid [inherited]
0Ch 23 - Force Loopback 22..16 - Source LID
- __be32 flexio_dev_wqe_datagram_seg::grh_gid_fl [inherited]
1Ch 30 - GRH will be placed in the packet 27..20 source GID 19..0 Flow Label
- uint8_t flexio_dev_wqe_datagram_seg::hop_limit [inherited]
1Bh - GRH Hop Limit
- __be32 flexio_dev_wqe_datagram_seg::qkey [inherited]
0h - Queue key
- __be32 flexio_dev_wqe_datagram_seg::reserved [inherited]
4h - Reserved
- uint8_t flexio_dev_wqe_datagram_seg::reserved0[4] [inherited]
10h - Reserved
- uint8_t flexio_dev_wqe_datagram_seg::rgid[16] [inherited]
20h..2Ch - Remote GID
- __be16 flexio_dev_wqe_datagram_seg::rlid_sport [inherited]
Obsolete name, saved for BWC purposes. 0Ch 15..0 - Remote LID (for IB) udp_sport (for RoCE)
- uint8_t flexio_dev_wqe_datagram_seg::rmac[6] [inherited]
14h..19h - Remote MAC
- uint8_t flexio_dev_wqe_datagram_seg::stat_rate_sl [inherited]
0Ch 31..28 - Static rate 27..24 - Service Level
- uint8_t flexio_dev_wqe_datagram_seg::tclass [inherited]
1Ah - GRH TClass
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE ethernet segment.
Public Variables
- __be16 cs_swp_flags
- __be16 inline_hdr_bsz
- uint8_t inline_hdrs[2]
- __be16 mss
- __be32 rsvd0
- __be32 rsvd2
Variables
- __be16 flexio_dev_wqe_eth_seg::cs_swp_flags [inherited]
01h 16..31 - CS and SWP flags.
- __be16 flexio_dev_wqe_eth_seg::inline_hdr_bsz [inherited]
03h 16..31 - Inline headers size (bytes).
- uint8_t flexio_dev_wqe_eth_seg::inline_hdrs[2] [inherited]
03h 0..15 - Inline headers (first two bytes).
- __be16 flexio_dev_wqe_eth_seg::mss [inherited]
01h 0..15 - Max segment size.
- __be32 flexio_dev_wqe_eth_seg::rsvd0 [inherited]
00h - Reserved.
- __be32 flexio_dev_wqe_eth_seg::rsvd2 [inherited]
02h - Reserved.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE inline data segment.
Public Variables
- uint8_t inline_data[16]
Variables
- uint8_t flexio_dev_wqe_inline_data_seg::inline_data[16] [inherited]
00h..03h - Inline data.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE inline send data segment.
Public Variables
- __be32 byte_count
- __be32 data_and_padding[3]
Variables
- __be32 flexio_dev_wqe_inline_send_data_seg::byte_count [inherited]
00h - Byte count.
- __be32 flexio_dev_wqe_inline_send_data_seg::data_and_padding[3] [inherited]
01h..03h - Data and padding array.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE memory pointer send data segment.
Public Variables
- __be64 addr
- __be32 byte_count
- __be32 lkey
Variables
- __be64 flexio_dev_wqe_mem_ptr_send_data_seg::addr [inherited]
02h..03h - Address.
- __be32 flexio_dev_wqe_mem_ptr_send_data_seg::byte_count [inherited]
00h - Byte count.
- __be32 flexio_dev_wqe_mem_ptr_send_data_seg::lkey [inherited]
01h - Local key.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE receive data segment.
Public Variables
- __be64 addr
- __be32 byte_count
- __be32 lkey
Variables
- __be64 flexio_dev_wqe_rcv_data_seg::addr [inherited]
02h..03h - Address.
- __be32 flexio_dev_wqe_rcv_data_seg::byte_count [inherited]
00h - Byte count.
- __be32 flexio_dev_wqe_rcv_data_seg::lkey [inherited]
01h - Local key.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE RDMA segment.
Public Variables
Variables
- __be64 flexio_dev_wqe_rdma_seg::raddr [inherited]
00h..01h - Remote address.
- __be32 flexio_dev_wqe_rdma_seg::rkey [inherited]
02h - Remote key.
- __be32 flexio_dev_wqe_rdma_seg::rsvd0 [inherited]
03h - Reserved.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev shared receive WQE.
Public Variables
- __be16 next_wqe_index
- uint8_t rsvd0[2]
- uint8_t rsvd1[11]
- uint8_t signature
Variables
- __be16 flexio_dev_wqe_shared_receive_seg::next_wqe_index [inherited]
Index (pointer) in the WQE buffer to the next WQE to be executed.
- uint8_t flexio_dev_wqe_shared_receive_seg::rsvd0[2] [inherited]
Reserved bits for memory alignment.
- uint8_t flexio_dev_wqe_shared_receive_seg::rsvd1[11] [inherited]
Reserved bits for memory alignment.
- uint8_t flexio_dev_wqe_shared_receive_seg::signature [inherited]
WQE signature.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev WQE transpose segment.
Public Variables
- uint8_t element_size
- uint8_t num_of_cols
- uint8_t num_of_rows
- uint8_t rsvd0[0x3]
- uint8_t rsvd1
- uint8_t rsvd2
- uint8_t rsvd4[0x8]
Variables
- uint8_t flexio_dev_wqe_transpose_seg::element_size [inherited]
00h 0..7 - Matrix element size.
- uint8_t flexio_dev_wqe_transpose_seg::num_of_cols [inherited]
01h 16..22 - Number of columns in matrix (7b).
- uint8_t flexio_dev_wqe_transpose_seg::num_of_rows [inherited]
01h 0..6 - Number of rows in matrix (7b).
- uint8_t flexio_dev_wqe_transpose_seg::rsvd0[0x3] [inherited]
00h 8..31 - Reserved.
- uint8_t flexio_dev_wqe_transpose_seg::rsvd1 [inherited]
01h - Reserved.
- uint8_t flexio_dev_wqe_transpose_seg::rsvd2 [inherited]
01h - Reserved.
- uint8_t flexio_dev_wqe_transpose_seg::rsvd4[0x8] [inherited]
02h..03h - Reserved.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev wait on data WQE - data portion.
Public Variables
Variables
- __be64 flexio_dev_wqe_wait_on_data_data_seg::data [inherited]
0h..7h Actual data for comparison.
- __be64 flexio_dev_wqe_wait_on_data_data_seg::data_mask [inherited]
8h..fh Mask for data.
[ Flex IO SDK dev queue types ]
Describes Flex IO dev wait on data WQE.
Public Variables
- uint32_t lkey
- uint8_t op_inv
- uint8_t rsvd0[0x3]
- uint32_t va_31_3_fail_act
- uint32_t va_63_32
Variables
- uint32_t flexio_dev_wqe_wait_on_data_seg::lkey [inherited]
4h..7h lkey.
- uint8_t flexio_dev_wqe_wait_on_data_seg::op_inv [inherited]
3h 0..3 Operation. 4..4 Invert.
- uint8_t flexio_dev_wqe_wait_on_data_seg::rsvd0[0x3] [inherited]
0h 2h Reserved.
- uint32_t flexio_dev_wqe_wait_on_data_seg::va_31_3_fail_act [inherited]
8h..fh 0..2 Fail operation. 3..31 bits 3..31 of the lkey address.
- uint32_t flexio_dev_wqe_wait_on_data_seg::va_63_32 [inherited]
8h..bh bits 32..63 of the lkey address.
[ Flex IO SDK message stream ]
Describes Flex IO trace message. This struct is used to communicate the tracer raw data from device to host.
Public Variables
Variables
- uint64_t flexio_tracer_msg::arg0 [inherited]
Argument 0 for trace string format.
- uint64_t flexio_tracer_msg::arg1 [inherited]
Argument 1 for trace string format.
- uint64_t flexio_tracer_msg::arg2 [inherited]
Argument 2 for trace string format.
- uint64_t flexio_tracer_msg::arg3 [inherited]
Argument 3 for trace string format.
- uint64_t flexio_tracer_msg::arg4 [inherited]
Argument 4 for trace string format.
- uint64_t flexio_tracer_msg::arg5 [inherited]
Argument 5 for trace string format.
[ Flex IO SDK dev ]
Describes Flex IO dev spinlock.
Public Variables
- uint32_t locked
Variables
- uint32_t spinlock_s::locked [inherited]
Indication for spinlock lock state.