i40e/i40evf: Add a new offload for RSS PCTYPE V2 for X722
authorAnjali Singhai Jain <anjali.singhai@intel.com>
Thu, 19 Nov 2015 19:34:22 +0000 (11:34 -0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sun, 13 Dec 2015 05:08:42 +0000 (21:08 -0800)
X722 supports Expanded version of TCP, UDP PCTYPES for RSS.
Add a Virtchnl offload to support this.

Without this patch with X722 devices, driver will set wrong PCTYPES
for VF and UDP flows will not fan out.

Change-ID: I04fe4988253b7cd108c9179a643c969764efcb76
Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_virtchnl.h
drivers/net/ethernet/intel/i40evf/i40e_virtchnl.h
drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c

index ae879826084b790a467f9eed01196f430daf47ae..3226946bf3d44076daacaf18fc6ad71158a57fca 100644 (file)
@@ -153,6 +153,7 @@ struct i40e_virtchnl_vsi_resource {
 #define I40E_VIRTCHNL_VF_OFFLOAD_WB_ON_ITR     0x00000020
 #define I40E_VIRTCHNL_VF_OFFLOAD_VLAN          0x00010000
 #define I40E_VIRTCHNL_VF_OFFLOAD_RX_POLLING    0x00020000
+#define I40E_VIRTCHNL_VF_OFFLOAD_RSS_PCTYPE_V2 0x00040000
 
 struct i40e_virtchnl_vf_resource {
        u16 num_vsis;
index 9f7b279b9d9c8f827dec988b25801f26f0386f7c..3b9d2037456cc5cbed60ab2ecd41569583712fe2 100644 (file)
@@ -153,6 +153,7 @@ struct i40e_virtchnl_vsi_resource {
 #define I40E_VIRTCHNL_VF_OFFLOAD_WB_ON_ITR     0x00000020
 #define I40E_VIRTCHNL_VF_OFFLOAD_VLAN          0x00010000
 #define I40E_VIRTCHNL_VF_OFFLOAD_RX_POLLING    0x00020000
+#define I40E_VIRTCHNL_VF_OFFLOAD_RSS_PCTYPE_V2 0x00040000
 
 struct i40e_virtchnl_vf_resource {
        u16 num_vsis;
index 3c9c008b168b752d4ab209dc3203edce7058b4ec..c1c5262837572fdfb00d62f3e322c2f6ac7d14f1 100644 (file)
@@ -157,7 +157,9 @@ int i40evf_send_vf_config_msg(struct i40evf_adapter *adapter)
               I40E_VIRTCHNL_VF_OFFLOAD_RSS_AQ |
               I40E_VIRTCHNL_VF_OFFLOAD_RSS_REG |
               I40E_VIRTCHNL_VF_OFFLOAD_VLAN |
-              I40E_VIRTCHNL_VF_OFFLOAD_WB_ON_ITR;
+              I40E_VIRTCHNL_VF_OFFLOAD_WB_ON_ITR |
+              I40E_VIRTCHNL_VF_OFFLOAD_RSS_PCTYPE_V2;
+
        adapter->current_op = I40E_VIRTCHNL_OP_GET_VF_RESOURCES;
        adapter->aq_required &= ~I40EVF_FLAG_AQ_GET_CONFIG;
        if (PF_IS_V11(adapter))