Lines Matching refs:props
66 struct ib_device_attr *props) in mlx5_ib_query_device() argument
90 memset(props, 0, sizeof(*props)); in mlx5_ib_query_device()
92 props->fw_ver = ((u64)fw_rev_maj(dev->mdev) << 32) | in mlx5_ib_query_device()
95 props->device_cap_flags = IB_DEVICE_CHANGE_PHY_PORT | in mlx5_ib_query_device()
101 props->device_cap_flags |= IB_DEVICE_BAD_PKEY_CNTR; in mlx5_ib_query_device()
103 props->device_cap_flags |= IB_DEVICE_BAD_QKEY_CNTR; in mlx5_ib_query_device()
105 props->device_cap_flags |= IB_DEVICE_AUTO_PATH_MIG; in mlx5_ib_query_device()
106 props->device_cap_flags |= IB_DEVICE_LOCAL_DMA_LKEY; in mlx5_ib_query_device()
108 props->device_cap_flags |= IB_DEVICE_XRC; in mlx5_ib_query_device()
109 props->device_cap_flags |= IB_DEVICE_MEM_MGT_EXTENSIONS; in mlx5_ib_query_device()
111 props->device_cap_flags |= IB_DEVICE_SIGNATURE_HANDOVER; in mlx5_ib_query_device()
113 props->sig_prot_cap = IB_PROT_T10DIF_TYPE_1 | in mlx5_ib_query_device()
116 props->sig_guard_cap = IB_GUARD_T10DIF_CRC | in mlx5_ib_query_device()
120 props->device_cap_flags |= IB_DEVICE_BLOCK_MULTICAST_LOOPBACK; in mlx5_ib_query_device()
122 props->vendor_id = be32_to_cpup((__be32 *)(out_mad->data + 36)) & in mlx5_ib_query_device()
124 props->vendor_part_id = be16_to_cpup((__be16 *)(out_mad->data + 30)); in mlx5_ib_query_device()
125 props->hw_ver = be32_to_cpup((__be32 *)(out_mad->data + 32)); in mlx5_ib_query_device()
126 memcpy(&props->sys_image_guid, out_mad->data + 4, 8); in mlx5_ib_query_device()
128 props->max_mr_size = ~0ull; in mlx5_ib_query_device()
129 props->page_size_cap = gen->min_page_sz; in mlx5_ib_query_device()
130 props->max_qp = 1 << gen->log_max_qp; in mlx5_ib_query_device()
131 props->max_qp_wr = gen->max_wqes; in mlx5_ib_query_device()
135 props->max_sge = min(max_rq_sg, max_sq_sg); in mlx5_ib_query_device()
136 props->max_cq = 1 << gen->log_max_cq; in mlx5_ib_query_device()
137 props->max_cqe = gen->max_cqes - 1; in mlx5_ib_query_device()
138 props->max_mr = 1 << gen->log_max_mkey; in mlx5_ib_query_device()
139 props->max_pd = 1 << gen->log_max_pd; in mlx5_ib_query_device()
140 props->max_qp_rd_atom = 1 << gen->log_max_ra_req_qp; in mlx5_ib_query_device()
141 props->max_qp_init_rd_atom = 1 << gen->log_max_ra_res_qp; in mlx5_ib_query_device()
142 props->max_srq = 1 << gen->log_max_srq; in mlx5_ib_query_device()
143 props->max_srq_wr = gen->max_srq_wqes - 1; in mlx5_ib_query_device()
144 props->local_ca_ack_delay = gen->local_ca_ack_delay; in mlx5_ib_query_device()
145 props->max_res_rd_atom = props->max_qp_rd_atom * props->max_qp; in mlx5_ib_query_device()
146 props->max_srq_sge = max_rq_sg - 1; in mlx5_ib_query_device()
147 props->max_fast_reg_page_list_len = (unsigned int)-1; in mlx5_ib_query_device()
148 props->local_ca_ack_delay = gen->local_ca_ack_delay; in mlx5_ib_query_device()
149 props->atomic_cap = IB_ATOMIC_NONE; in mlx5_ib_query_device()
150 props->masked_atomic_cap = IB_ATOMIC_NONE; in mlx5_ib_query_device()
151 props->max_pkeys = be16_to_cpup((__be16 *)(out_mad->data + 28)); in mlx5_ib_query_device()
152 props->max_mcast_grp = 1 << gen->log_max_mcg; in mlx5_ib_query_device()
153 props->max_mcast_qp_attach = gen->max_qp_mcg; in mlx5_ib_query_device()
154 props->max_total_mcast_qp_attach = props->max_mcast_qp_attach * in mlx5_ib_query_device()
155 props->max_mcast_grp; in mlx5_ib_query_device()
156 props->max_map_per_fmr = INT_MAX; /* no limit in ConnectIB */ in mlx5_ib_query_device()
160 props->device_cap_flags |= IB_DEVICE_ON_DEMAND_PAGING; in mlx5_ib_query_device()
161 props->odp_caps = dev->odp_caps; in mlx5_ib_query_device()
172 struct ib_port_attr *props) in mlx5_ib_query_port() argument
192 memset(props, 0, sizeof(*props)); in mlx5_ib_query_port()
205 props->lid = be16_to_cpup((__be16 *)(out_mad->data + 16)); in mlx5_ib_query_port()
206 props->lmc = out_mad->data[34] & 0x7; in mlx5_ib_query_port()
207 props->sm_lid = be16_to_cpup((__be16 *)(out_mad->data + 18)); in mlx5_ib_query_port()
208 props->sm_sl = out_mad->data[36] & 0xf; in mlx5_ib_query_port()
209 props->state = out_mad->data[32] & 0xf; in mlx5_ib_query_port()
210 props->phys_state = out_mad->data[33] >> 4; in mlx5_ib_query_port()
211 props->port_cap_flags = be32_to_cpup((__be32 *)(out_mad->data + 20)); in mlx5_ib_query_port()
212 props->gid_tbl_len = out_mad->data[50]; in mlx5_ib_query_port()
213 props->max_msg_sz = 1 << gen->log_max_msg; in mlx5_ib_query_port()
214 props->pkey_tbl_len = gen->port[port - 1].pkey_table_len; in mlx5_ib_query_port()
215 props->bad_pkey_cntr = be16_to_cpup((__be16 *)(out_mad->data + 46)); in mlx5_ib_query_port()
216 props->qkey_viol_cntr = be16_to_cpup((__be16 *)(out_mad->data + 48)); in mlx5_ib_query_port()
217 props->active_width = out_mad->data[31] & 0xf; in mlx5_ib_query_port()
218 props->active_speed = out_mad->data[35] >> 4; in mlx5_ib_query_port()
219 props->max_mtu = out_mad->data[41] & 0xf; in mlx5_ib_query_port()
220 props->active_mtu = out_mad->data[36] >> 4; in mlx5_ib_query_port()
221 props->subnet_timeout = out_mad->data[51] & 0x1f; in mlx5_ib_query_port()
222 props->max_vl_num = out_mad->data[37] >> 4; in mlx5_ib_query_port()
223 props->init_type_reply = out_mad->data[41] >> 4; in mlx5_ib_query_port()
226 if (props->port_cap_flags & IB_PORT_EXTENDED_SPEEDS_SUP) { in mlx5_ib_query_port()
231 props->active_speed = 16; /* FDR */ in mlx5_ib_query_port()
234 props->active_speed = 32; /* EDR */ in mlx5_ib_query_port()
240 if (props->active_speed == 4) { in mlx5_ib_query_port()
254 props->active_speed = 8; in mlx5_ib_query_port()
336 struct ib_device_modify *props) in mlx5_ib_modify_device() argument
353 memcpy(&in, props->node_desc, 64); in mlx5_ib_modify_device()
359 memcpy(ibdev->node_desc, props->node_desc, 64); in mlx5_ib_modify_device()
365 struct ib_port_modify *props) in mlx5_ib_modify_port() argument
378 tmp = (attr.port_cap_flags | props->set_port_cap_mask) & in mlx5_ib_modify_port()
379 ~props->clr_port_cap_mask; in mlx5_ib_modify_port()