DPDK 25.03.0-rc0
rte_ib.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright (c) 2023 NVIDIA Corporation & Affiliates
3 */
4
5#ifndef RTE_IB_H
6#define RTE_IB_H
7
16#include <stdint.h>
17
18#include <rte_byteorder.h>
19
24__extension__
25struct rte_ib_bth {
26 uint8_t opcode;
27#if RTE_BYTE_ORDER == RTE_LITTLE_ENDIAN
28 uint8_t tver:4;
29 uint8_t padcnt:2;
30 uint8_t m:1;
31 uint8_t se:1;
32#elif RTE_BYTE_ORDER == RTE_BIG_ENDIAN
33 uint8_t se:1;
34 uint8_t m:1;
35 uint8_t padcnt:2;
36 uint8_t tver:4;
37#endif
39#if RTE_BYTE_ORDER == RTE_LITTLE_ENDIAN
40 uint8_t rsvd0:6;
41 uint8_t b:1;
42 uint8_t f:1;
43#elif RTE_BYTE_ORDER == RTE_BIG_ENDIAN
44 uint8_t f:1;
45 uint8_t b:1;
46 uint8_t rsvd0:6;
47#endif
48 uint8_t dst_qp[3];
49#if RTE_BYTE_ORDER == RTE_LITTLE_ENDIAN
50 uint8_t rsvd1:7;
51 uint8_t a:1;
52#elif RTE_BYTE_ORDER == RTE_BIG_ENDIAN
53 uint8_t a:1;
54 uint8_t rsvd1:7;
55#endif
56 uint8_t psn[3];
58
60#define RTE_ROCEV2_DEFAULT_PORT 4791
61
62#endif /* RTE_IB_H */
uint16_t rte_be16_t
#define __rte_packed
Definition: rte_common.h:108
uint8_t f
Definition: rte_ib.h:42
uint8_t psn[3]
Definition: rte_ib.h:56
uint8_t dst_qp[3]
Definition: rte_ib.h:48
uint8_t b
Definition: rte_ib.h:41
rte_be16_t pkey
Definition: rte_ib.h:38
uint8_t opcode
Definition: rte_ib.h:26
uint8_t rsvd0
Definition: rte_ib.h:40
uint8_t m
Definition: rte_ib.h:30
uint8_t padcnt
Definition: rte_ib.h:29
uint8_t se
Definition: rte_ib.h:31
uint8_t tver
Definition: rte_ib.h:28
uint8_t rsvd1
Definition: rte_ib.h:50
uint8_t a
Definition: rte_ib.h:51