1/* SPDX-License-Identifier: GPL-2.0 */
2// Copyright (c) 2025 Broadcom.
3
4#ifndef __BNG_SP_H__
5#define __BNG_SP_H__
6
7#include "bng_fw.h"
8
9#define BNG_VAR_MAX_WQE 4352
10#define BNG_VAR_MAX_SGE 13
11
12struct bng_re_dev_attr {
13#define FW_VER_ARR_LEN 4
14 u8 fw_ver[FW_VER_ARR_LEN];
15#define BNG_RE_NUM_GIDS_SUPPORTED 256
16 u16 max_sgid;
17 u16 max_mrw;
18 u32 max_qp;
19#define BNG_RE_MAX_OUT_RD_ATOM 126
20 u32 max_qp_rd_atom;
21 u32 max_qp_init_rd_atom;
22 u32 max_qp_wqes;
23 u32 max_qp_sges;
24 u32 max_cq;
25 u32 max_cq_wqes;
26 u32 max_cq_sges;
27 u32 max_mr;
28 u64 max_mr_size;
29 u32 max_pd;
30 u32 max_mw;
31 u32 max_raw_ethy_qp;
32 u32 max_ah;
33 u32 max_srq;
34 u32 max_srq_wqes;
35 u32 max_srq_sges;
36 u32 max_pkey;
37 u32 max_inline_data;
38 u32 l2_db_size;
39 u8 tqm_alloc_reqs[BNG_MAX_TQM_ALLOC_REQ];
40 bool is_atomic;
41 u16 dev_cap_flags;
42 u16 dev_cap_flags2;
43 u32 max_dpi;
44};
45
46int bng_re_get_dev_attr(struct bng_re_rcfw *rcfw);
47#endif
48

source code of linux/drivers/infiniband/hw/bng_re/bng_sp.h