1 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */ 2 /* QLogic qed NIC Driver 3 * Copyright (c) 2015-2017 QLogic Corporation 4 * Copyright (c) 2019-2020 Marvell International Ltd. 5 */ 6 7 #ifndef __RDMA_COMMON__ 8 #define __RDMA_COMMON__ 9 10 /************************/ 11 /* RDMA FW CONSTANTS */ 12 /************************/ 13 14 #define RDMA_RESERVED_LKEY (0) 15 #define RDMA_RING_PAGE_SIZE (0x1000) 16 17 #define RDMA_MAX_SGE_PER_SQ_WQE (4) 18 #define RDMA_MAX_SGE_PER_RQ_WQE (4) 19 20 #define RDMA_MAX_DATA_SIZE_IN_WQE (0x80000000) 21 22 #define RDMA_REQ_RD_ATOMIC_ELM_SIZE (0x50) 23 #define RDMA_RESP_RD_ATOMIC_ELM_SIZE (0x20) 24 25 #define RDMA_MAX_CQS (64 * 1024) 26 #define RDMA_MAX_TIDS (128 * 1024 - 1) 27 #define RDMA_MAX_PDS (64 * 1024) 28 #define RDMA_MAX_XRC_SRQS (1024) 29 #define RDMA_MAX_SRQS (32 * 1024) 30 #define RDMA_MAX_IRQ_ELEMS_IN_PAGE (128) 31 32 #define RDMA_NUM_STATISTIC_COUNTERS MAX_NUM_VPORTS 33 #define RDMA_NUM_STATISTIC_COUNTERS_K2 MAX_NUM_VPORTS_K2 34 #define RDMA_NUM_STATISTIC_COUNTERS_BB MAX_NUM_VPORTS_BB 35 36 #define RDMA_TASK_TYPE (PROTOCOLID_ROCE) 37 38 struct rdma_srq_id { 39 __le16 srq_idx; 40 __le16 opaque_fid; 41 }; 42 43 struct rdma_srq_producers { 44 __le32 sge_prod; 45 __le32 wqe_prod; 46 }; 47 48 #endif /* __RDMA_COMMON__ */ 49