Commit be23511e authored by Saeed Mahameed's avatar Saeed Mahameed
Browse files

net/mlx5e: Refactor set_pflag_cqe_based_moder



Rearrange the code and use cqe_mode_to_period_mode() helper.

Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
parent b5f42903
Loading
Loading
Loading
Loading
+7 −12
Original line number Diff line number Diff line
@@ -1883,24 +1883,19 @@ static int set_pflag_cqe_based_moder(struct net_device *netdev, bool enable,
				     bool is_rx_cq)
{
	struct mlx5e_priv *priv = netdev_priv(netdev);
	struct mlx5_core_dev *mdev = priv->mdev;
	struct mlx5e_params new_params;
	bool mode_changed;
	u8 cq_period_mode, current_cq_period_mode;
	struct mlx5e_params new_params;

	if (enable && !MLX5_CAP_GEN(priv->mdev, cq_period_start_from_cqe))
		return -EOPNOTSUPP;

	cq_period_mode = cqe_mode_to_period_mode(enable);

	cq_period_mode = enable ?
		MLX5_CQ_PERIOD_MODE_START_FROM_CQE :
		MLX5_CQ_PERIOD_MODE_START_FROM_EQE;
	current_cq_period_mode = is_rx_cq ?
		priv->channels.params.rx_cq_moderation.cq_period_mode :
		priv->channels.params.tx_cq_moderation.cq_period_mode;
	mode_changed = cq_period_mode != current_cq_period_mode;

	if (cq_period_mode == MLX5_CQ_PERIOD_MODE_START_FROM_CQE &&
	    !MLX5_CAP_GEN(mdev, cq_period_start_from_cqe))
		return -EOPNOTSUPP;

	if (!mode_changed)
	if (cq_period_mode == current_cq_period_mode)
		return 0;

	new_params = priv->channels.params;