From patchwork Tue Mar 8 18:38:30 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Monjalon X-Patchwork-Id: 11217 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 4F87F374E; Tue, 8 Mar 2016 19:40:18 +0100 (CET) Received: from mail-wm0-f52.google.com (mail-wm0-f52.google.com [74.125.82.52]) by dpdk.org (Postfix) with ESMTP id C18292C63 for ; Tue, 8 Mar 2016 19:40:14 +0100 (CET) Received: by mail-wm0-f52.google.com with SMTP id l68so40094029wml.1 for ; Tue, 08 Mar 2016 10:40:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=p69fvbGMLMIRaDbxxtVddG+hXsy+6S/RuoQ34Kg8EkU=; b=pVykc0rY8n/8MBHfFqqL4vUyLDbqJ0UPdJupWJsVSUy8r99kbrG4aYVoFzNIDKkiWf miz8d/5QDxJk+gNqgfkqa5Ez583kTlUWmXr0ZRcu46QMH64BfIX4XNAVn7yfD73PDeSV 62qGl38N/L66LDiFRKI30EGbB4CD0xGrY1AwKKx/VVs2qKWTS0t7XOXrLGI36DdNXkfA j4sr+/LDDw6UrQcJ8YIjOh9P9Dr33pg4vCw1P7SIO4mm7P0FMpVcK1Qz0cp73+wEdZfE mAlX9D/J5x16zLOaN0NSuMNS5X8HSWOd21wAJGZy3bJa8ftAXgkeehwOAGz1qPaEV/M/ dM5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=p69fvbGMLMIRaDbxxtVddG+hXsy+6S/RuoQ34Kg8EkU=; b=W+FUrDji3XFSclzae4+WQ6oEtwFYudbkjIXtWJlqcusutHgXZ672xOCJ6u5hNegwO8 kVDqDhmO2m8rVHoskOLBK+XEq0GeTRioiNrB/aFs2zVvBD0u1/nu6XtSrfvKS/ZuF2sf GOCU4PU4ysixt+IxeCP1Fa+U42y30s/bK4nJgaFNiMbAiUzjfjCnSw6DY/GSw7ZzUEGJ PE6VVCqS3JvkdoSB6aty/SFSP+ezH5fulqWw3+PrFLLyKv6tqx7/QKaxYMGggM4ssInA b1q2MH9kRYiYvemDTHm4mnPd1TNqPtmazKbWA72vuykyEo5lzUay0lQ8wx+mbJngGgVP pLpA== X-Gm-Message-State: AD7BkJLYa20mHKsaL7fwqInm+o6LeZwtB3JnYgoqFf/0HauCX5faPMuSFLXzffaz4m8/P0OI X-Received: by 10.194.113.38 with SMTP id iv6mr30532505wjb.126.1457462414627; Tue, 08 Mar 2016 10:40:14 -0800 (PST) Received: from XPS13.localdomain (171.36.101.84.rev.sfr.net. [84.101.36.171]) by smtp.gmail.com with ESMTPSA id d2sm2955883wjf.28.2016.03.08.10.40.13 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 08 Mar 2016 10:40:14 -0800 (PST) From: Thomas Monjalon To: helin.zhang@intel.com Date: Tue, 8 Mar 2016 19:38:30 +0100 Message-Id: <1457462311-16349-3-git-send-email-thomas.monjalon@6wind.com> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1457462311-16349-1-git-send-email-thomas.monjalon@6wind.com> References: <1456113585-15259-1-git-send-email-helin.zhang@intel.com> <1457462311-16349-1-git-send-email-thomas.monjalon@6wind.com> Cc: dev@dpdk.org Subject: [dpdk-dev] [PATCH v3 2/3] pci: remove config of extended tag 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Helin Zhang Remove pci configuration of 'extended tag' and 'max read request size', as they are not required by all devices and it lets PMD to configure them if necessary. In addition, 'pci_config_space_set()' is deprecated. Signed-off-by: Helin Zhang Signed-off-by: Thomas Monjalon --- config/common_base | 1 + doc/guides/rel_notes/deprecation.rst | 5 ++ lib/librte_eal/common/eal_common_pci.c | 7 --- lib/librte_eal/common/include/rte_pci.h | 5 +- lib/librte_eal/linuxapp/eal/eal_pci.c | 90 +++------------------------------ 5 files changed, 16 insertions(+), 92 deletions(-) diff --git a/config/common_base b/config/common_base index 1af28c8..c73f71a 100644 --- a/config/common_base +++ b/config/common_base @@ -102,6 +102,7 @@ CONFIG_RTE_EAL_PMD_PATH="" # # Special configurations in PCI Config Space for high performance +# They are all deprecated, and will be removed later. # CONFIG_RTE_PCI_CONFIG=n CONFIG_RTE_PCI_EXTENDED_TAG="" diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 9930b5a..9979982 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -8,6 +8,11 @@ API and ABI deprecation notices are to be posted here. Deprecation Notices ------------------- +* The EAL function pci_config_space_set is deprecated in release 16.04 + and will be removed from 16.07. + Macros CONFIG_RTE_PCI_CONFIG, CONFIG_RTE_PCI_EXTENDED_TAG and + CONFIG_RTE_PCI_MAX_READ_REQUEST_SIZE will be removed. + * The following fields have been deprecated in rte_eth_stats: ibadcrc, ibadlen, imcasts, fdirmatch, fdirmiss, tx_pause_xon, rx_pause_xon, tx_pause_xoff, rx_pause_xoff diff --git a/lib/librte_eal/common/eal_common_pci.c b/lib/librte_eal/common/eal_common_pci.c index 96d5113..366fb46 100644 --- a/lib/librte_eal/common/eal_common_pci.c +++ b/lib/librte_eal/common/eal_common_pci.c @@ -180,13 +180,6 @@ rte_eal_pci_probe_one_driver(struct rte_pci_driver *dr, struct rte_pci_device *d } if (dr->drv_flags & RTE_PCI_DRV_NEED_MAPPING) { -#ifdef RTE_PCI_CONFIG - /* - * Set PCIe config space for high performance. - * Return value can be ignored. - */ - pci_config_space_set(dev); -#endif /* map resources for devices that use igb_uio */ ret = rte_eal_pci_map_device(dev); if (ret != 0) diff --git a/lib/librte_eal/common/include/rte_pci.h b/lib/librte_eal/common/include/rte_pci.h index 067e084..e692094 100644 --- a/lib/librte_eal/common/include/rte_pci.h +++ b/lib/librte_eal/common/include/rte_pci.h @@ -578,14 +578,17 @@ void rte_eal_pci_ioport_write(struct rte_pci_ioport *p, const void *data, size_t len, off_t offset); #ifdef RTE_PCI_CONFIG +#include /** * Set special config space registers for performance purpose. + * It is deprecated, as all configurations have been moved into + * each PMDs respectively. * * @param dev * A pointer to a rte_pci_device structure describing the device * to use */ -void pci_config_space_set(struct rte_pci_device *dev); +void pci_config_space_set(struct rte_pci_device *dev) __rte_deprecated; #endif /* RTE_PCI_CONFIG */ #ifdef __cplusplus diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c b/lib/librte_eal/linuxapp/eal/eal_pci.c index 4346973..4c45452 100644 --- a/lib/librte_eal/linuxapp/eal/eal_pci.c +++ b/lib/librte_eal/linuxapp/eal/eal_pci.c @@ -482,92 +482,14 @@ error: } #ifdef RTE_PCI_CONFIG -static int -pci_config_extended_tag(struct rte_pci_device *dev) -{ - struct rte_pci_addr *loc = &dev->addr; - char filename[PATH_MAX]; - char buf[BUFSIZ]; - FILE *f; - - /* not configured, let it as is */ - if (strncmp(RTE_PCI_EXTENDED_TAG, "on", 2) != 0 && - strncmp(RTE_PCI_EXTENDED_TAG, "off", 3) != 0) - return 0; - - snprintf(filename, sizeof(filename), - SYSFS_PCI_DEVICES "/" PCI_PRI_FMT "/" "extended_tag", - loc->domain, loc->bus, loc->devid, loc->function); - f = fopen(filename, "rw+"); - if (!f) - return -1; - - fgets(buf, sizeof(buf), f); - if (strncmp(RTE_PCI_EXTENDED_TAG, "on", 2) == 0) { - /* enable Extended Tag*/ - if (strncmp(buf, "on", 2) != 0) { - fseek(f, 0, SEEK_SET); - fputs("on", f); - } - } else { - /* disable Extended Tag */ - if (strncmp(buf, "off", 3) != 0) { - fseek(f, 0, SEEK_SET); - fputs("off", f); - } - } - fclose(f); - - return 0; -} - -static int -pci_config_max_read_request_size(struct rte_pci_device *dev) -{ - struct rte_pci_addr *loc = &dev->addr; - char filename[PATH_MAX]; - char buf[BUFSIZ], param[BUFSIZ]; - FILE *f; - /* size can be 128, 256, 512, 1024, 2048, 4096 */ - uint32_t max_size = RTE_PCI_MAX_READ_REQUEST_SIZE; - - /* not configured, let it as is */ - if (!max_size) - return 0; - - snprintf(filename, sizeof(filename), - SYSFS_PCI_DEVICES "/" PCI_PRI_FMT "/" "max_read_request_size", - loc->domain, loc->bus, loc->devid, loc->function); - f = fopen(filename, "rw+"); - if (!f) - return -1; - - fgets(buf, sizeof(buf), f); - snprintf(param, sizeof(param), "%d", max_size); - - /* check if the size to be set is the same as current */ - if (strcmp(buf, param) == 0) { - fclose(f); - return 0; - } - fseek(f, 0, SEEK_SET); - fputs(param, f); - fclose(f); - - return 0; -} - +/* + * It is deprecated, all its configurations have been moved into + * each PMD respectively. + */ void -pci_config_space_set(struct rte_pci_device *dev) +pci_config_space_set(__rte_unused struct rte_pci_device *dev) { - if (rte_eal_process_type() != RTE_PROC_PRIMARY) - return; - - /* configure extended tag */ - pci_config_extended_tag(dev); - - /* configure max read request size */ - pci_config_max_read_request_size(dev); + RTE_LOG(DEBUG, EAL, "Nothing here, as it is deprecated\n"); } #endif