Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2050bc65 authored by Catherine Sullivan's avatar Catherine Sullivan Committed by Jeff Kirsher
Browse files

i40e: Turn flow director off in MFP mode



The driver needs to set the MFP flag earlier in i40e_sw_init
and then can use that flag to decide if other hardware
work-arouds are required.

Change-ID: Ib17ad1e3485f57b28845ab4722294a99f203bd48
Signed-off-by: default avatarCatherine Sullivan <catherine.sullivan@intel.com>
Signed-off-by: default avatarJesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent c35a1d7f
Loading
Loading
Loading
Loading
+7 −7
Original line number Original line Diff line number Diff line
@@ -4658,7 +4658,7 @@ static int i40e_get_capabilities(struct i40e_pf *pf)
		}
		}
	} while (err);
	} while (err);


	if (pf->hw.revision_id == 0 && pf->hw.func_caps.npar_enable) {
	if (pf->hw.revision_id == 0 && (pf->flags & I40E_FLAG_MFP_ENABLED)) {
		pf->hw.func_caps.num_msix_vectors += 1;
		pf->hw.func_caps.num_msix_vectors += 1;
		pf->hw.func_caps.num_tx_qp =
		pf->hw.func_caps.num_tx_qp =
			min_t(int, pf->hw.func_caps.num_tx_qp,
			min_t(int, pf->hw.func_caps.num_tx_qp,
@@ -5827,6 +5827,12 @@ static int i40e_sw_init(struct i40e_pf *pf)
		pf->rss_size = 1;
		pf->rss_size = 1;
	}
	}


	/* MFP mode enabled */
	if (pf->hw.func_caps.npar_enable || pf->hw.func_caps.mfp_mode_1) {
		pf->flags |= I40E_FLAG_MFP_ENABLED;
		dev_info(&pf->pdev->dev, "MFP mode Enabled\n");
	}

	if (pf->hw.func_caps.dcb)
	if (pf->hw.func_caps.dcb)
		pf->num_tc_qps = I40E_DEFAULT_QUEUES_PER_TC;
		pf->num_tc_qps = I40E_DEFAULT_QUEUES_PER_TC;
	else
	else
@@ -5855,12 +5861,6 @@ static int i40e_sw_init(struct i40e_pf *pf)
		pf->num_vmdq_qps = I40E_DEFAULT_QUEUES_PER_VMDQ;
		pf->num_vmdq_qps = I40E_DEFAULT_QUEUES_PER_VMDQ;
	}
	}


	/* MFP mode enabled */
	if (pf->hw.func_caps.npar_enable || pf->hw.func_caps.mfp_mode_1) {
		pf->flags |= I40E_FLAG_MFP_ENABLED;
		dev_info(&pf->pdev->dev, "MFP mode Enabled\n");
	}

#ifdef CONFIG_PCI_IOV
#ifdef CONFIG_PCI_IOV
	if (pf->hw.func_caps.num_vfs) {
	if (pf->hw.func_caps.num_vfs) {
		pf->num_vf_qps = I40E_DEFAULT_QUEUES_PER_VF;
		pf->num_vf_qps = I40E_DEFAULT_QUEUES_PER_VF;