net/mlx5_core: Add new query HCA vport commands
Added the implementation for the following commands: 1. QUERY_HCA_VPORT_GID 2. QUERY_HCA_VPORT_PKEY 3. QUERY_HCA_VPORT_CONTEXT They will be needed when we move to work with ISSI > 0 in the IB driver too. Signed-off-by: Majd Dibbiny <majd@mellanox.com> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
d18a9470f8
commit
707c4602cd
@@ -553,6 +553,41 @@ struct mlx5_pas {
|
||||
u8 log_sz;
|
||||
};
|
||||
|
||||
enum port_state_policy {
|
||||
MLX5_AAA_000
|
||||
};
|
||||
|
||||
enum phy_port_state {
|
||||
MLX5_AAA_111
|
||||
};
|
||||
|
||||
struct mlx5_hca_vport_context {
|
||||
u32 field_select;
|
||||
bool sm_virt_aware;
|
||||
bool has_smi;
|
||||
bool has_raw;
|
||||
enum port_state_policy policy;
|
||||
enum phy_port_state phys_state;
|
||||
enum ib_port_state vport_state;
|
||||
u8 port_physical_state;
|
||||
u64 sys_image_guid;
|
||||
u64 port_guid;
|
||||
u64 node_guid;
|
||||
u32 cap_mask1;
|
||||
u32 cap_mask1_perm;
|
||||
u32 cap_mask2;
|
||||
u32 cap_mask2_perm;
|
||||
u16 lid;
|
||||
u8 init_type_reply; /* bitmask: see ib spec 14.2.5.6 InitTypeReply */
|
||||
u8 lmc;
|
||||
u8 subnet_timeout;
|
||||
u16 sm_lid;
|
||||
u8 sm_sl;
|
||||
u16 qkey_violation_counter;
|
||||
u16 pkey_violation_counter;
|
||||
bool grh_required;
|
||||
};
|
||||
|
||||
static inline void *mlx5_buf_offset(struct mlx5_buf *buf, int offset)
|
||||
{
|
||||
return buf->direct.buf + offset;
|
||||
@@ -792,4 +827,14 @@ struct mlx5_profile {
|
||||
} mr_cache[MAX_MR_CACHE_ENTRIES];
|
||||
};
|
||||
|
||||
static inline int mlx5_get_gid_table_len(u16 param)
|
||||
{
|
||||
if (param > 4) {
|
||||
pr_warn("gid table length is zero\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 8 * (1 << param);
|
||||
}
|
||||
|
||||
#endif /* MLX5_DRIVER_H */
|
||||
|
Reference in New Issue
Block a user