| # SPDX-License-Identifier: (GPL-2.0 OR Linux-OpenIB) |
| # Copyright (c) 2018, Mellanox Technologies. All rights reserved. |
| |
| #cython: language_level=3 |
| |
| |
| cdef extern from '<infiniband/verbs.h>': |
| |
| cpdef enum ibv_transport_type: |
| IBV_TRANSPORT_UNKNOWN |
| IBV_TRANSPORT_IB |
| IBV_TRANSPORT_IWARP |
| IBV_TRANSPORT_USNIC |
| IBV_TRANSPORT_USNIC_UDP |
| |
| cpdef enum ibv_node_type: |
| IBV_NODE_UNKNOWN |
| IBV_NODE_CA |
| IBV_NODE_SWITCH |
| IBV_NODE_ROUTER |
| IBV_NODE_RNIC |
| IBV_NODE_USNIC |
| IBV_NODE_USNIC_UDP |
| |
| cpdef enum: |
| IBV_LINK_LAYER_UNSPECIFIED |
| IBV_LINK_LAYER_INFINIBAND |
| IBV_LINK_LAYER_ETHERNET |
| |
| cpdef enum ibv_atomic_cap: |
| IBV_ATOMIC_NONE |
| IBV_ATOMIC_HCA |
| IBV_ATOMIC_GLOB |
| |
| cpdef enum ibv_port_state: |
| IBV_PORT_NOP |
| IBV_PORT_DOWN |
| IBV_PORT_INIT |
| IBV_PORT_ARMED |
| IBV_PORT_ACTIVE |
| IBV_PORT_ACTIVE_DEFER |
| |
| cpdef enum ibv_port_cap_flags: |
| IBV_PORT_SM |
| IBV_PORT_NOTICE_SUP |
| IBV_PORT_TRAP_SUP |
| IBV_PORT_OPT_IPD_SUP |
| IBV_PORT_AUTO_MIGR_SUP |
| IBV_PORT_SL_MAP_SUP |
| IBV_PORT_MKEY_NVRAM |
| IBV_PORT_PKEY_NVRAM |
| IBV_PORT_LED_INFO_SUP |
| IBV_PORT_SYS_IMAGE_GUID_SUP |
| IBV_PORT_PKEY_SW_EXT_PORT_TRAP_SUP |
| IBV_PORT_EXTENDED_SPEEDS_SUP |
| IBV_PORT_CAP_MASK2_SUP |
| IBV_PORT_CM_SUP |
| IBV_PORT_SNMP_TUNNEL_SUP |
| IBV_PORT_REINIT_SUP |
| IBV_PORT_DEVICE_MGMT_SUP |
| IBV_PORT_VENDOR_CLASS_SUP |
| IBV_PORT_DR_NOTICE_SUP |
| IBV_PORT_CAP_MASK_NOTICE_SUP |
| IBV_PORT_BOOT_MGMT_SUP |
| IBV_PORT_LINK_LATENCY_SUP |
| IBV_PORT_CLIENT_REG_SUP |
| IBV_PORT_IP_BASED_GIDS |
| |
| cpdef enum ibv_port_cap_flags2: |
| IBV_PORT_SET_NODE_DESC_SUP |
| IBV_PORT_INFO_EXT_SUP |
| IBV_PORT_VIRT_SUP |
| IBV_PORT_SWITCH_PORT_STATE_TABLE_SUP |
| IBV_PORT_LINK_WIDTH_2X_SUP |
| IBV_PORT_LINK_SPEED_HDR_SUP |
| |
| cpdef enum ibv_mtu: |
| IBV_MTU_256 |
| IBV_MTU_512 |
| IBV_MTU_1024 |
| IBV_MTU_2048 |
| IBV_MTU_4096 |
| |
| cpdef enum ibv_event_type: |
| IBV_EVENT_CQ_ERR |
| IBV_EVENT_QP_FATAL |
| IBV_EVENT_QP_REQ_ERR |
| IBV_EVENT_QP_ACCESS_ERR |
| IBV_EVENT_COMM_EST |
| IBV_EVENT_SQ_DRAINED |
| IBV_EVENT_PATH_MIG |
| IBV_EVENT_PATH_MIG_ERR |
| IBV_EVENT_DEVICE_FATAL |
| IBV_EVENT_PORT_ACTIVE |
| IBV_EVENT_PORT_ERR |
| IBV_EVENT_LID_CHANGE |
| IBV_EVENT_PKEY_CHANGE |
| IBV_EVENT_SM_CHANGE |
| IBV_EVENT_SRQ_ERR |
| IBV_EVENT_SRQ_LIMIT_REACHED |
| IBV_EVENT_QP_LAST_WQE_REACHED |
| IBV_EVENT_CLIENT_REREGISTER |
| IBV_EVENT_GID_CHANGE |
| IBV_EVENT_WQ_FATAL |
| |
| cpdef enum ibv_access_flags: |
| IBV_ACCESS_LOCAL_WRITE |
| IBV_ACCESS_REMOTE_WRITE |
| IBV_ACCESS_REMOTE_READ |
| IBV_ACCESS_REMOTE_ATOMIC |
| IBV_ACCESS_MW_BIND |
| IBV_ACCESS_ZERO_BASED |
| IBV_ACCESS_ON_DEMAND |
| IBV_ACCESS_HUGETLB |
| IBV_ACCESS_RELAXED_ORDERING |
| |
| cpdef enum ibv_wr_opcode: |
| IBV_WR_RDMA_WRITE |
| IBV_WR_RDMA_WRITE_WITH_IMM |
| IBV_WR_SEND |
| IBV_WR_SEND_WITH_IMM |
| IBV_WR_RDMA_READ |
| IBV_WR_ATOMIC_CMP_AND_SWP |
| IBV_WR_ATOMIC_FETCH_AND_ADD |
| IBV_WR_LOCAL_INV |
| IBV_WR_BIND_MW |
| IBV_WR_SEND_WITH_INV |
| IBV_WR_TSO |
| |
| cpdef enum ibv_send_flags: |
| IBV_SEND_FENCE |
| IBV_SEND_SIGNALED |
| IBV_SEND_SOLICITED |
| IBV_SEND_INLINE |
| IBV_SEND_IP_CSUM |
| |
| cpdef enum ibv_qp_type: |
| IBV_QPT_RC |
| IBV_QPT_UC |
| IBV_QPT_UD |
| IBV_QPT_RAW_PACKET |
| IBV_QPT_XRC_SEND |
| IBV_QPT_XRC_RECV |
| IBV_QPT_DRIVER |
| |
| cpdef enum ibv_qp_state: |
| IBV_QPS_RESET |
| IBV_QPS_INIT |
| IBV_QPS_RTR |
| IBV_QPS_RTS |
| IBV_QPS_SQD |
| IBV_QPS_SQE |
| IBV_QPS_ERR |
| IBV_QPS_UNKNOWN |
| |
| cpdef enum ibv_mw_type: |
| IBV_MW_TYPE_1 |
| IBV_MW_TYPE_2 |
| |
| cpdef enum ibv_wc_status: |
| IBV_WC_SUCCESS |
| IBV_WC_LOC_LEN_ERR |
| IBV_WC_LOC_QP_OP_ERR |
| IBV_WC_LOC_EEC_OP_ERR |
| IBV_WC_LOC_PROT_ERR |
| IBV_WC_WR_FLUSH_ERR |
| IBV_WC_MW_BIND_ERR |
| IBV_WC_BAD_RESP_ERR |
| IBV_WC_LOC_ACCESS_ERR |
| IBV_WC_REM_INV_REQ_ERR |
| IBV_WC_REM_ACCESS_ERR |
| IBV_WC_REM_OP_ERR |
| IBV_WC_RETRY_EXC_ERR |
| IBV_WC_RNR_RETRY_EXC_ERR |
| IBV_WC_LOC_RDD_VIOL_ERR |
| IBV_WC_REM_INV_RD_REQ_ERR |
| IBV_WC_REM_ABORT_ERR |
| IBV_WC_INV_EECN_ERR |
| IBV_WC_INV_EEC_STATE_ERR |
| IBV_WC_FATAL_ERR |
| IBV_WC_RESP_TIMEOUT_ERR |
| IBV_WC_GENERAL_ERR |
| |
| cpdef enum ibv_wc_opcode: |
| IBV_WC_SEND |
| IBV_WC_RDMA_WRITE |
| IBV_WC_RDMA_READ |
| IBV_WC_COMP_SWAP |
| IBV_WC_FETCH_ADD |
| IBV_WC_BIND_MW |
| IBV_WC_LOCAL_INV |
| IBV_WC_TSO |
| IBV_WC_RECV |
| IBV_WC_RECV_RDMA_WITH_IMM |
| |
| cpdef enum ibv_create_cq_wc_flags: |
| IBV_WC_EX_WITH_BYTE_LEN |
| IBV_WC_EX_WITH_IMM |
| IBV_WC_EX_WITH_QP_NUM |
| IBV_WC_EX_WITH_SRC_QP |
| IBV_WC_EX_WITH_SLID |
| IBV_WC_EX_WITH_SL |
| IBV_WC_EX_WITH_DLID_PATH_BITS |
| IBV_WC_EX_WITH_COMPLETION_TIMESTAMP |
| IBV_WC_EX_WITH_CVLAN |
| IBV_WC_EX_WITH_FLOW_TAG |
| IBV_WC_EX_WITH_COMPLETION_TIMESTAMP_WALLCLOCK |
| |
| cpdef enum ibv_wc_flags: |
| IBV_WC_GRH |
| IBV_WC_WITH_IMM |
| IBV_WC_IP_CSUM_OK |
| IBV_WC_WITH_INV |
| |
| cpdef enum ibv_srq_attr_mask: |
| IBV_SRQ_MAX_WR |
| IBV_SRQ_LIMIT |
| |
| cpdef enum ibv_srq_type: |
| IBV_SRQT_BASIC |
| IBV_SRQT_XRC |
| |
| cpdef enum ibv_srq_init_attr_mask: |
| IBV_SRQ_INIT_ATTR_TYPE |
| IBV_SRQ_INIT_ATTR_PD |
| IBV_SRQ_INIT_ATTR_XRCD |
| IBV_SRQ_INIT_ATTR_CQ |
| |
| cpdef enum ibv_mig_state: |
| IBV_MIG_MIGRATED |
| IBV_MIG_REARM |
| IBV_MIG_ARMED |
| |
| cpdef enum ibv_qp_init_attr_mask: |
| IBV_QP_INIT_ATTR_PD |
| IBV_QP_INIT_ATTR_XRCD |
| IBV_QP_INIT_ATTR_CREATE_FLAGS |
| IBV_QP_INIT_ATTR_MAX_TSO_HEADER |
| IBV_QP_INIT_ATTR_IND_TABLE |
| IBV_QP_INIT_ATTR_RX_HASH |
| IBV_QP_INIT_ATTR_SEND_OPS_FLAGS |
| |
| cpdef enum ibv_qp_create_flags: |
| IBV_QP_CREATE_BLOCK_SELF_MCAST_LB |
| IBV_QP_CREATE_SCATTER_FCS |
| IBV_QP_CREATE_CVLAN_STRIPPING |
| IBV_QP_CREATE_SOURCE_QPN |
| IBV_QP_CREATE_PCI_WRITE_END_PADDING |
| |
| cpdef enum ibv_qp_attr_mask: |
| IBV_QP_STATE |
| IBV_QP_CUR_STATE |
| IBV_QP_EN_SQD_ASYNC_NOTIFY |
| IBV_QP_ACCESS_FLAGS |
| IBV_QP_PKEY_INDEX |
| IBV_QP_PORT |
| IBV_QP_QKEY |
| IBV_QP_AV |
| IBV_QP_PATH_MTU |
| IBV_QP_TIMEOUT |
| IBV_QP_RETRY_CNT |
| IBV_QP_RNR_RETRY |
| IBV_QP_RQ_PSN |
| IBV_QP_MAX_QP_RD_ATOMIC |
| IBV_QP_ALT_PATH |
| IBV_QP_MIN_RNR_TIMER |
| IBV_QP_SQ_PSN |
| IBV_QP_MAX_DEST_RD_ATOMIC |
| IBV_QP_PATH_MIG_STATE |
| IBV_QP_CAP |
| IBV_QP_DEST_QPN |
| IBV_QP_RATE_LIMIT |
| |
| cpdef enum ibv_wq_type: |
| IBV_WQT_RQ |
| |
| cpdef enum ibv_wq_init_attr_mask: |
| IBV_WQ_INIT_ATTR_FLAGS |
| |
| cpdef enum ibv_wq_flags: |
| IBV_WQ_FLAGS_CVLAN_STRIPPING |
| IBV_WQ_FLAGS_SCATTER_FCS |
| IBV_WQ_FLAGS_DELAY_DROP |
| IBV_WQ_FLAGS_PCI_WRITE_END_PADDING |
| |
| cpdef enum ibv_wq_state: |
| IBV_WQS_RESET |
| IBV_WQS_RDY |
| IBV_WQS_ERR |
| IBV_WQS_UNKNOWN |
| |
| cpdef enum ibv_wq_attr_mask: |
| IBV_WQ_ATTR_STATE |
| IBV_WQ_ATTR_CURR_STATE |
| IBV_WQ_ATTR_FLAGS |
| |
| cpdef enum ibv_rx_hash_function_flags: |
| IBV_RX_HASH_FUNC_TOEPLITZ |
| |
| cpdef enum ibv_rx_hash_fields: |
| IBV_RX_HASH_SRC_IPV4 |
| IBV_RX_HASH_DST_IPV4 |
| IBV_RX_HASH_SRC_IPV6 |
| IBV_RX_HASH_DST_IPV6 |
| IBV_RX_HASH_SRC_PORT_TCP |
| IBV_RX_HASH_DST_PORT_TCP |
| IBV_RX_HASH_SRC_PORT_UDP |
| IBV_RX_HASH_DST_PORT_UDP |
| |
| cpdef enum ibv_flow_flags: |
| IBV_FLOW_ATTR_FLAGS_DONT_TRAP |
| IBV_FLOW_ATTR_FLAGS_EGRESS |
| |
| cpdef enum ibv_flow_attr_type: |
| IBV_FLOW_ATTR_NORMAL |
| IBV_FLOW_ATTR_ALL_DEFAULT |
| IBV_FLOW_ATTR_MC_DEFAULT |
| IBV_FLOW_ATTR_SNIFFER |
| |
| cpdef enum ibv_flow_spec_type: |
| IBV_FLOW_SPEC_ETH |
| IBV_FLOW_SPEC_IPV4 |
| IBV_FLOW_SPEC_IPV6 |
| IBV_FLOW_SPEC_IPV4_EXT |
| IBV_FLOW_SPEC_ESP |
| IBV_FLOW_SPEC_TCP |
| IBV_FLOW_SPEC_UDP |
| IBV_FLOW_SPEC_VXLAN_TUNNEL |
| IBV_FLOW_SPEC_GRE |
| IBV_FLOW_SPEC_MPLS |
| IBV_FLOW_SPEC_INNER |
| IBV_FLOW_SPEC_ACTION_TAG |
| IBV_FLOW_SPEC_ACTION_DROP |
| IBV_FLOW_SPEC_ACTION_HANDLE |
| IBV_FLOW_SPEC_ACTION_COUNT |
| |
| cpdef enum: |
| IBV_QPF_GRH_REQUIRED |
| |
| cpdef enum ibv_counter_description: |
| IBV_COUNTER_PACKETS |
| IBV_COUNTER_BYTES |
| |
| cpdef enum ibv_read_counters_flags: |
| IBV_READ_COUNTERS_ATTR_PREFER_CACHED |
| |
| cpdef enum ibv_cq_init_attr_mask: |
| IBV_CQ_INIT_ATTR_MASK_FLAGS |
| IBV_CQ_INIT_ATTR_MASK_PD |
| |
| cpdef enum ibv_create_cq_attr_flags: |
| IBV_CREATE_CQ_ATTR_SINGLE_THREADED |
| IBV_CREATE_CQ_ATTR_IGNORE_OVERRUN |
| |
| cpdef enum ibv_odp_general_caps: |
| IBV_ODP_SUPPORT |
| IBV_ODP_SUPPORT_IMPLICIT |
| |
| cpdef enum ibv_odp_transport_cap_bits: |
| IBV_ODP_SUPPORT_SEND |
| IBV_ODP_SUPPORT_RECV |
| IBV_ODP_SUPPORT_WRITE |
| IBV_ODP_SUPPORT_READ |
| IBV_ODP_SUPPORT_ATOMIC |
| IBV_ODP_SUPPORT_SRQ_RECV |
| |
| cpdef enum ibv_device_cap_flags: |
| IBV_DEVICE_RESIZE_MAX_WR |
| IBV_DEVICE_BAD_PKEY_CNTR |
| IBV_DEVICE_BAD_QKEY_CNTR |
| IBV_DEVICE_RAW_MULTI |
| IBV_DEVICE_AUTO_PATH_MIG |
| IBV_DEVICE_CHANGE_PHY_PORT |
| IBV_DEVICE_UD_AV_PORT_ENFORCE |
| IBV_DEVICE_CURR_QP_STATE_MOD |
| IBV_DEVICE_SHUTDOWN_PORT |
| IBV_DEVICE_INIT_TYPE |
| IBV_DEVICE_PORT_ACTIVE_EVENT |
| IBV_DEVICE_SYS_IMAGE_GUID |
| IBV_DEVICE_RC_RNR_NAK_GEN |
| IBV_DEVICE_SRQ_RESIZE |
| IBV_DEVICE_N_NOTIFY_CQ |
| IBV_DEVICE_MEM_WINDOW |
| IBV_DEVICE_UD_IP_CSUM |
| IBV_DEVICE_XRC |
| IBV_DEVICE_MEM_MGT_EXTENSIONS |
| IBV_DEVICE_MEM_WINDOW_TYPE_2A |
| IBV_DEVICE_MEM_WINDOW_TYPE_2B |
| IBV_DEVICE_RC_IP_CSUM |
| IBV_DEVICE_RAW_IP_CSUM |
| IBV_DEVICE_MANAGED_FLOW_STEERING |
| |
| cpdef enum ibv_raw_packet_caps: |
| IBV_RAW_PACKET_CAP_CVLAN_STRIPPING |
| IBV_RAW_PACKET_CAP_SCATTER_FCS |
| IBV_RAW_PACKET_CAP_IP_CSUM |
| IBV_RAW_PACKET_CAP_DELAY_DROP |
| |
| cpdef enum ibv_xrcd_init_attr_mask: |
| IBV_XRCD_INIT_ATTR_FD |
| IBV_XRCD_INIT_ATTR_OFLAGS |
| IBV_XRCD_INIT_ATTR_RESERVED |
| |
| cpdef enum: |
| IBV_WC_STANDARD_FLAGS |
| |
| cpdef enum ibv_qp_create_send_ops_flags: |
| IBV_QP_EX_WITH_RDMA_WRITE |
| IBV_QP_EX_WITH_RDMA_WRITE_WITH_IMM |
| IBV_QP_EX_WITH_SEND |
| IBV_QP_EX_WITH_SEND_WITH_IMM |
| IBV_QP_EX_WITH_RDMA_READ |
| IBV_QP_EX_WITH_ATOMIC_CMP_AND_SWP |
| IBV_QP_EX_WITH_ATOMIC_FETCH_AND_ADD |
| IBV_QP_EX_WITH_LOCAL_INV |
| IBV_QP_EX_WITH_BIND_MW |
| IBV_QP_EX_WITH_SEND_WITH_INV |
| IBV_QP_EX_WITH_TSO |
| |
| cdef unsigned long long IBV_DEVICE_RAW_SCATTER_FCS |
| cdef unsigned long long IBV_DEVICE_PCI_WRITE_END_PADDING |
| |
| cpdef enum ibv_parent_domain_init_attr_mask: |
| IBV_PARENT_DOMAIN_INIT_ATTR_ALLOCATORS |
| IBV_PARENT_DOMAIN_INIT_ATTR_PD_CONTEXT |
| |
| cdef void *IBV_ALLOCATOR_USE_DEFAULT |
| |
| |
| _IBV_DEVICE_RAW_SCATTER_FCS = IBV_DEVICE_RAW_SCATTER_FCS |
| _IBV_DEVICE_PCI_WRITE_END_PADDING = IBV_DEVICE_PCI_WRITE_END_PADDING |
| _IBV_ALLOCATOR_USE_DEFAULT = <size_t>IBV_ALLOCATOR_USE_DEFAULT |
| |
| |
| cdef extern from '<infiniband/driver.h>': |
| cpdef enum ibv_gid_type: |
| IBV_GID_TYPE_IB_ROCE_V1 |
| IBV_GID_TYPE_ROCE_V2 |