From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhe Tao Subject: [PATCH 1/2 v2] i40e: support floating VEB config Date: Tue, 23 Feb 2016 17:13:14 +0800 Message-ID: <1456218796-15630-2-git-send-email-zhe.tao@intel.com> References: <1453361066-22755-2-git-send-email-zhe.tao@intel.com> <1456218796-15630-1-git-send-email-zhe.tao@intel.com> To: dev@dpdk.org Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id B16015AB9 for ; Tue, 23 Feb 2016 10:13:32 +0100 (CET) In-Reply-To: <1456218796-15630-1-git-send-email-zhe.tao@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Add the new floating related argument option in the EAL. Using this parameter, all the samples can decide whether to use legacy VEB/VEPA, or floating VEB. Even the floating argument is provided in the EAL, but this floating feature are only support for FVL so far. Signed-off-by: Zhe Tao --- lib/librte_eal/common/eal_common_options.c | 4 ++++ lib/librte_eal/common/eal_internal_cfg.h | 1 + lib/librte_eal/common/eal_options.h | 2 ++ 3 files changed, 7 insertions(+) diff --git a/lib/librte_eal/common/eal_common_options.c b/lib/librte_eal/common/eal_common_options.c index 29942ea..29ed7bf 100644 --- a/lib/librte_eal/common/eal_common_options.c +++ b/lib/librte_eal/common/eal_common_options.c @@ -95,6 +95,7 @@ eal_long_options[] = { {OPT_VFIO_INTR, 1, NULL, OPT_VFIO_INTR_NUM }, {OPT_VMWARE_TSC_MAP, 0, NULL, OPT_VMWARE_TSC_MAP_NUM }, {OPT_XEN_DOM0, 0, NULL, OPT_XEN_DOM0_NUM }, + {OPT_FLOATING, 0, NULL, OPT_FLOATING_NUM }, {0, 0, NULL, 0 } }; @@ -896,6 +897,9 @@ eal_parse_common_option(int opt, const char *optarg, return -1; } break; + case OPT_FLOATING_NUM: + conf->floating = 1; + break; /* don't know what to do, leave this to caller */ default: diff --git a/lib/librte_eal/common/eal_internal_cfg.h b/lib/librte_eal/common/eal_internal_cfg.h index 5f1367e..0dd303a 100644 --- a/lib/librte_eal/common/eal_internal_cfg.h +++ b/lib/librte_eal/common/eal_internal_cfg.h @@ -68,6 +68,7 @@ struct internal_config { volatile unsigned xen_dom0_support; /**< support app running on Xen Dom0*/ volatile unsigned no_pci; /**< true to disable PCI */ volatile unsigned no_hpet; /**< true to disable HPET */ + volatile unsigned floating; /**< true to disable floating VEB */ volatile unsigned vmware_tsc_map; /**< true to use VMware TSC mapping * instead of native TSC */ volatile unsigned no_shconf; /**< true if there is no shared config */ diff --git a/lib/librte_eal/common/eal_options.h b/lib/librte_eal/common/eal_options.h index a881c62..413c9e6 100644 --- a/lib/librte_eal/common/eal_options.h +++ b/lib/librte_eal/common/eal_options.h @@ -83,6 +83,8 @@ enum { OPT_VMWARE_TSC_MAP_NUM, #define OPT_XEN_DOM0 "xen-dom0" OPT_XEN_DOM0_NUM, +#define OPT_FLOATING "floating" + OPT_FLOATING_NUM, OPT_LONG_MAX_NUM }; -- 2.1.4