DPDK patches and discussions
 help / color / mirror / Atom feed
From: Helin Zhang <helin.zhang@intel.com>
To: dev@dpdk.org
Cc: zhe.tag@intel.com
Subject: [dpdk-dev] [PATCH v2 2/3] eal: remove pci config of extended tag
Date: Mon, 22 Feb 2016 11:59:44 +0800	[thread overview]
Message-ID: <1456113585-15259-3-git-send-email-helin.zhang@intel.com> (raw)
In-Reply-To: <1456113585-15259-1-git-send-email-helin.zhang@intel.com>

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 neccessary.
In addition, 'pci_config_space_set()' is deprecated.

Signed-off-by: Helin Zhang <helin.zhang@intel.com>
---
 config/common_linuxapp                  |  1 +
 lib/librte_eal/common/eal_common_pci.c  |  7 ---
 lib/librte_eal/common/include/rte_pci.h |  4 +-
 lib/librte_eal/linuxapp/eal/eal_pci.c   | 90 +++------------------------------
 4 files changed, 10 insertions(+), 92 deletions(-)

v2:
 - Fixed the compile warnings.

diff --git a/config/common_linuxapp b/config/common_linuxapp
index f1638db..a74cbab 100644
--- a/config/common_linuxapp
+++ b/config/common_linuxapp
@@ -110,6 +110,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/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..189d509 100644
--- a/lib/librte_eal/common/include/rte_pci.h
+++ b/lib/librte_eal/common/include/rte_pci.h
@@ -580,12 +580,14 @@ void rte_eal_pci_ioport_write(struct rte_pci_ioport *p,
 #ifdef RTE_PCI_CONFIG
 /**
  * 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
 
-- 
1.9.3

  parent reply	other threads:[~2016-02-22  3:59 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-21  2:38 [dpdk-dev] [PATCH 0/3] i40e: enable " Helin Zhang
2015-12-21  2:38 ` [dpdk-dev] [PATCH 1/3] " Helin Zhang
2016-01-22  1:34   ` Wu, Jingjing
2016-01-22 10:26   ` Thomas Monjalon
2016-01-24  3:25     ` Zhang, Helin
2016-01-25  9:16       ` Thomas Monjalon
2016-01-26  0:29         ` Zhang, Helin
2015-12-21  2:38 ` [dpdk-dev] [PATCH 2/3] eal: remove pci config of " Helin Zhang
2016-02-22  3:59   ` [dpdk-dev] [PATCH v2 0/3] enable extended tag for i40e Helin Zhang
2016-02-22  3:59     ` [dpdk-dev] [PATCH v2 1/3] i40e: enable extended tag Helin Zhang
2016-02-23 10:44       ` Bruce Richardson
2016-02-24  0:39         ` Zhang, Helin
2016-02-22  3:59     ` Helin Zhang [this message]
2016-03-08 17:05       ` [dpdk-dev] [PATCH v2 2/3] eal: remove pci config of " Thomas Monjalon
2016-02-22  3:59     ` [dpdk-dev] [PATCH v2 3/3] igb_uio: deprecate sys files Helin Zhang
2016-03-08 17:48       ` Thomas Monjalon
2016-03-08 18:02       ` Thomas Monjalon
2016-02-22  5:52     ` [dpdk-dev] [PATCH v2 0/3] enable extended tag for i40e Wu, Jingjing
2016-03-08 18:38     ` [dpdk-dev] [PATCH v3 " Thomas Monjalon
2016-03-08 18:38       ` [dpdk-dev] [PATCH v3 1/3] i40e: enable extended tag Thomas Monjalon
2016-03-08 18:38       ` [dpdk-dev] [PATCH v3 2/3] pci: remove config of " Thomas Monjalon
2016-03-08 18:38       ` [dpdk-dev] [PATCH v3 3/3] igb_uio: deprecate " Thomas Monjalon
2016-03-08 18:41       ` [dpdk-dev] [PATCH v3 0/3] enable extended tag for i40e Thomas Monjalon
2016-03-09  0:48         ` Zhang, Helin
2016-03-09  0:50           ` Thomas Monjalon
2016-03-09  0:52           ` Thomas Monjalon
2015-12-21  2:38 ` [dpdk-dev] [PATCH 3/3] igb_uio: remove sys files for setting pci config space Helin Zhang
2015-12-21 18:57   ` Stephen Hemminger
2016-02-22  6:31 ` [dpdk-dev] [PATCH v2 0/3] enable extended tag for i40e Helin Zhang
2016-02-22  6:31   ` [dpdk-dev] [PATCH v2 1/3] i40e: enable extended tag Helin Zhang
2016-02-22  6:31   ` [dpdk-dev] [PATCH v2 2/3] eal: remove pci config of " Helin Zhang
2016-02-22  6:31   ` [dpdk-dev] [PATCH v2 3/3] igb_uio: deprecate sys files Helin Zhang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1456113585-15259-3-git-send-email-helin.zhang@intel.com \
    --to=helin.zhang@intel.com \
    --cc=dev@dpdk.org \
    --cc=zhe.tag@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).