[dpdk-dev] [PATCH 2/6] i40e:support RX tunnel filter for NVGRE packet

Jijiang Liu jijiang.liu at intel.com
Mon Jan 26 04:43:21 CET 2015


The filter types supported are listed below for NVGRE packet:
   1. Inner MAC and Inner VLAN ID.

   2. Inner MAC address, inner VLAN ID and tenant ID.

   3. Inner MAC and tenant ID.

   4. Inner MAC address.

   5. Outer MAC address, tenant ID and inner MAC address.

   6. Inner IP address.


Signed-off-by: Jijiang Liu <jijiang.liu at intel.com>
---
 lib/librte_pmd_i40e/i40e_ethdev.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/lib/librte_pmd_i40e/i40e_ethdev.c b/lib/librte_pmd_i40e/i40e_ethdev.c
index b47a3d2..fa78d5d 100644
--- a/lib/librte_pmd_i40e/i40e_ethdev.c
+++ b/lib/librte_pmd_i40e/i40e_ethdev.c
@@ -4742,6 +4742,9 @@ i40e_dev_get_filter_type(uint16_t filter_type, uint16_t *flag)
 	case ETH_TUNNEL_FILTER_IMAC:
 		*flag = I40E_AQC_ADD_CLOUD_FILTER_IMAC;
 		break;
+	case ETH_TUNNEL_FILTER_IIP:
+		*flag = I40E_AQC_ADD_CLOUD_FILTER_IIP;
+		break;
 	default:
 		PMD_DRV_LOG(ERR, "invalid tunnel filter type");
 		return -EINVAL;
@@ -4796,6 +4799,9 @@ i40e_dev_tunnel_filter_set(struct i40e_pf *pf,
 	case RTE_TUNNEL_TYPE_VXLAN:
 		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_XVLAN;
 		break;
+	case RTE_TUNNEL_TYPE_NVGRE:
+		tun_type = I40E_AQC_ADD_CLOUD_TNL_TYPE_NVGRE_OMAC;
+		break;
 	default:
 		/* Other tunnel types is not supported. */
 		PMD_DRV_LOG(ERR, "tunnel type is not supported.");
-- 
1.7.7.6



More information about the dev mailing list