From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id C5DC85963 for ; Tue, 29 Sep 2015 16:27:27 +0200 (CEST) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga101.fm.intel.com with ESMTP; 29 Sep 2015 07:27:10 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,608,1437462000"; d="scan'208";a="779932712" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by orsmga001.jf.intel.com with ESMTP; 29 Sep 2015 07:27:05 -0700 Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com [10.237.217.46]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id t8TER4KH032484; Tue, 29 Sep 2015 15:27:04 +0100 Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1]) by sivswdev02.ir.intel.com with ESMTP id t8TER4qF013533; Tue, 29 Sep 2015 15:27:04 +0100 Received: (from achiliki@localhost) by sivswdev02.ir.intel.com with id t8TER4vI013529; Tue, 29 Sep 2015 15:27:04 +0100 From: Andrey Chilikin To: dev@dpdk.org Date: Tue, 29 Sep 2015 15:26:39 +0100 Message-Id: <1443536800-13269-3-git-send-email-andrey.chilikin@intel.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1443536800-13269-1-git-send-email-andrey.chilikin@intel.com> References: <1443536800-13269-1-git-send-email-andrey.chilikin@intel.com> Subject: [dpdk-dev] [PATCH 2/3] i40e: add RTE_ETH_FDIR_OTHER processing for flow director behavior X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Sep 2015 14:27:28 -0000 Add support for RTE_ETH_FDIR_OTHER flow director behavior so output queue is assigned by other filters Signed-off-by: Andrey Chilikin --- drivers/net/i40e/i40e_fdir.c | 12 ++++++++++-- 1 files changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/net/i40e/i40e_fdir.c b/drivers/net/i40e/i40e_fdir.c index c9ce98f..e2de4c5 100644 --- a/drivers/net/i40e/i40e_fdir.c +++ b/drivers/net/i40e/i40e_fdir.c @@ -1103,8 +1103,16 @@ i40e_fdir_filter_programming(struct i40e_pf *pf, if (fdir_action->behavior == RTE_ETH_FDIR_REJECT) dest = I40E_FILTER_PROGRAM_DESC_DEST_DROP_PACKET; - else - dest = I40E_FILTER_PROGRAM_DESC_DEST_DIRECT_PACKET_QINDEX; + else if (fdir_action->behavior == RTE_ETH_FDIR_ACCEPT) + dest = I40E_FILTER_PROGRAM_DESC_DEST_DIRECT_PACKET_QINDEX; + else if (fdir_action->behavior == RTE_ETH_FDIR_OTHER) + dest = I40E_FILTER_PROGRAM_DESC_DEST_DIRECT_PACKET_OTHER; + else { + PMD_DRV_LOG(ERR, "Failed to program FDIR filter:" + " unsupported fdir behavior."); + return -EINVAL; + } + fdirdp->dtype_cmd_cntindex |= rte_cpu_to_le_32((dest << I40E_TXD_FLTR_QW1_DEST_SHIFT) & I40E_TXD_FLTR_QW1_DEST_MASK); -- 1.7.4.1