mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 10:49:33 +00:00
net/mlx5: Enable setting minimum inline header mode for VFs
Implement the low-level part of the PF side in setting minimum inline header mode for VFs. Signed-off-by: Hadar Hen Zion <hadarh@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
parent
2974ab6e8b
commit
9def7121be
3 changed files with 23 additions and 1 deletions
|
@ -125,6 +125,26 @@ void mlx5_query_nic_vport_min_inline(struct mlx5_core_dev *mdev,
|
|||
}
|
||||
EXPORT_SYMBOL_GPL(mlx5_query_nic_vport_min_inline);
|
||||
|
||||
int mlx5_modify_nic_vport_min_inline(struct mlx5_core_dev *mdev,
|
||||
u16 vport, u8 min_inline)
|
||||
{
|
||||
u32 in[MLX5_ST_SZ_DW(modify_nic_vport_context_in)] = {0};
|
||||
int inlen = MLX5_ST_SZ_BYTES(modify_nic_vport_context_in);
|
||||
void *nic_vport_ctx;
|
||||
|
||||
MLX5_SET(modify_nic_vport_context_in, in,
|
||||
field_select.min_inline, 1);
|
||||
MLX5_SET(modify_nic_vport_context_in, in, vport_number, vport);
|
||||
MLX5_SET(modify_nic_vport_context_in, in, other_vport, 1);
|
||||
|
||||
nic_vport_ctx = MLX5_ADDR_OF(modify_nic_vport_context_in,
|
||||
in, nic_vport_context);
|
||||
MLX5_SET(nic_vport_context, nic_vport_ctx,
|
||||
min_wqe_inline_mode, min_inline);
|
||||
|
||||
return mlx5_modify_nic_vport_context(mdev, in, inlen);
|
||||
}
|
||||
|
||||
int mlx5_query_nic_vport_mac_address(struct mlx5_core_dev *mdev,
|
||||
u16 vport, u8 *addr)
|
||||
{
|
||||
|
|
|
@ -4724,7 +4724,7 @@ struct mlx5_ifc_modify_nic_vport_field_select_bits {
|
|||
u8 reserved_at_0[0x16];
|
||||
u8 node_guid[0x1];
|
||||
u8 port_guid[0x1];
|
||||
u8 reserved_at_18[0x1];
|
||||
u8 min_inline[0x1];
|
||||
u8 mtu[0x1];
|
||||
u8 change_event[0x1];
|
||||
u8 promisc[0x1];
|
||||
|
|
|
@ -45,6 +45,8 @@ int mlx5_query_nic_vport_mac_address(struct mlx5_core_dev *mdev,
|
|||
u16 vport, u8 *addr);
|
||||
void mlx5_query_nic_vport_min_inline(struct mlx5_core_dev *mdev,
|
||||
u8 *min_inline);
|
||||
int mlx5_modify_nic_vport_min_inline(struct mlx5_core_dev *mdev,
|
||||
u16 vport, u8 min_inline);
|
||||
int mlx5_modify_nic_vport_mac_address(struct mlx5_core_dev *dev,
|
||||
u16 vport, u8 *addr);
|
||||
int mlx5_query_nic_vport_mtu(struct mlx5_core_dev *mdev, u16 *mtu);
|
||||
|
|
Loading…
Reference in a new issue