All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dongdong Liu <liudongdong3@huawei.com>
To: <dev@dpdk.org>, <reshma.pattan@intel.com>, <thomas@monjalon.net>,
	<ferruh.yigit@xilinx.com>, <andrew.rybchenko@oktetlabs.ru>
Cc: Dongdong Liu <liudongdong3@huawei.com>,
	Min Hu <humin29@huawei.com>,
	Maryam Tahhan <maryam.tahhan@intel.com>
Subject: [PATCH v7 2/7] app/procinfo: add firmware version dump
Date: Sat, 24 Sep 2022 16:13:27 +0800	[thread overview]
Message-ID: <20220924081332.21475-3-liudongdong3@huawei.com> (raw)
In-Reply-To: <20220924081332.21475-1-liudongdong3@huawei.com>

Add support for dump ethdev firmware version.

The command is like:
dpdk-proc-info -a xxxx:xx:xx.x --file-prefix=xxx -- --firmware-version

Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
Signed-off-by: Dongdong Liu <liudongdong3@huawei.com>
Acked-by: Reshma Pattan <reshma.pattan@intel.com>
---
 app/proc-info/main.c | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/app/proc-info/main.c b/app/proc-info/main.c
index 3f6d011049..ab4fee1138 100644
--- a/app/proc-info/main.c
+++ b/app/proc-info/main.c
@@ -45,6 +45,8 @@
 #define MAX_LONG_OPT_SZ 64
 #define MAX_STRING_LEN 256
 
+#define ETHDEV_FWVERS_LEN 32
+
 #define STATS_BDR_FMT "========================================"
 #define STATS_BDR_STR(w, s) printf("%.*s%s%.*s\n", w, \
 	STATS_BDR_FMT, s, w, STATS_BDR_FMT)
@@ -105,6 +107,8 @@ static uint32_t enable_dump_regs;
 static char *dump_regs_file_prefix;
 /* Enable show DPDK version. */
 static uint32_t enable_shw_version;
+/* Enable show ethdev firmware version. */
+static uint32_t enable_shw_fw_version;
 
 /**< display usage */
 static void
@@ -134,6 +138,7 @@ proc_info_usage(const char *prgname)
 		"  --show-ring[=name]: to display ring information\n"
 		"  --show-mempool[=name]: to display mempool information\n"
 		"  --version: to display DPDK version\n"
+		"  --firmware-version: to display ethdev firmware version\n"
 		"  --iter-mempool=name: iterate mempool elements to display content\n"
 		"  --dump-regs=file-prefix: dump registers to file with the file-prefix\n",
 		prgname);
@@ -247,6 +252,7 @@ proc_info_parse_args(int argc, char **argv)
 		{"iter-mempool", required_argument, NULL, 0},
 		{"dump-regs", required_argument, NULL, 0},
 		{"version", 0, NULL, 0},
+		{"firmware-version", 0, NULL, 0},
 		{NULL, 0, 0, 0}
 	};
 
@@ -321,6 +327,9 @@ proc_info_parse_args(int argc, char **argv)
 			} else if (!strncmp(long_option[option_index].name,
 					"version", MAX_LONG_OPT_SZ))
 				enable_shw_version = 1;
+			else if (!strncmp(long_option[option_index].name,
+					"firmware-version", MAX_LONG_OPT_SZ))
+				enable_shw_fw_version = 1;
 			break;
 		case 1:
 			/* Print xstat single value given by name*/
@@ -1491,6 +1500,30 @@ show_version(void)
 	printf("DPDK version: %s\n", rte_version());
 }
 
+static void
+show_firmware_version(void)
+{
+	char fw_version[ETHDEV_FWVERS_LEN];
+	uint16_t i;
+
+	snprintf(bdr_str, MAX_STRING_LEN, " show - firmware version ");
+	STATS_BDR_STR(10, bdr_str);
+
+	RTE_ETH_FOREACH_DEV(i) {
+		/* Skip if port is not in mask */
+		if ((enabled_port_mask & (1ul << i)) == 0)
+			continue;
+
+		if (rte_eth_dev_fw_version_get(i, fw_version,
+					       ETHDEV_FWVERS_LEN) == 0)
+			printf("Ethdev port %u firmware version: %s\n", i,
+				fw_version);
+		else
+			printf("Ethdev port %u firmware version: %s\n", i,
+				"not available");
+	}
+}
+
 int
 main(int argc, char **argv)
 {
@@ -1606,6 +1639,8 @@ main(int argc, char **argv)
 		dump_regs(dump_regs_file_prefix);
 	if (enable_shw_version)
 		show_version();
+	if (enable_shw_fw_version)
+		show_firmware_version();
 
 	RTE_ETH_FOREACH_DEV(i)
 		rte_eth_dev_close(i);
-- 
2.22.0


  parent reply	other threads:[~2022-09-24  8:15 UTC|newest]

Thread overview: 89+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-22  9:12 [PATCH 0/6] app/procinfo: add some extended features Dongdong Liu
2022-07-22  9:12 ` [PATCH 1/6] app/procinfo: add version dump Dongdong Liu
2022-09-19  9:23   ` Pattan, Reshma
2022-09-20  2:35     ` Dongdong Liu
2022-07-22  9:12 ` [PATCH 2/6] app/procinfo: add RSS RETA dump Dongdong Liu
2022-07-22  9:12 ` [PATCH 3/6] app/procinfo: add module info dump Dongdong Liu
2022-07-22  9:12 ` [PATCH 4/6] app/proc-info: add dump of Rx/Tx burst mode Dongdong Liu
2022-07-22  9:12 ` [PATCH 5/6] app/procinfo: fix some wrong doxygen syntax Dongdong Liu
2022-07-22  9:12 ` [PATCH 6/6] doc: add some extended features in procinfo guide Dongdong Liu
2022-07-22 10:03 ` [PATCH 0/6] app/procinfo: add some extended features David Marchand
2022-07-25 11:03   ` Dongdong Liu
2022-09-17  1:12 ` Dongdong Liu
2022-09-20 10:51 ` [PATCH v2 " Dongdong Liu
2022-09-20 10:51   ` [PATCH v2 1/6] app/procinfo: add version dump Dongdong Liu
2022-09-20 15:21     ` Stephen Hemminger
2022-09-21 11:11       ` Dongdong Liu
2022-09-20 10:51   ` [PATCH v2 2/6] app/procinfo: add RSS RETA dump Dongdong Liu
2022-09-20 15:24     ` Stephen Hemminger
2022-09-21 11:21       ` Dongdong Liu
2022-09-20 10:51   ` [PATCH v2 3/6] app/procinfo: add module info dump Dongdong Liu
2022-09-20 15:22     ` Stephen Hemminger
2022-09-21 11:22       ` Dongdong Liu
2022-09-20 10:51   ` [PATCH v2 4/6] app/proc-info: add dump of Rx/Tx burst mode Dongdong Liu
2022-09-20 10:51   ` [PATCH v2 5/6] app/procinfo: fix some wrong doxygen syntax Dongdong Liu
2022-09-20 10:51   ` [PATCH v2 6/6] doc: add some extended features in procinfo guide Dongdong Liu
2022-09-21 14:26 ` [PATCH v3 0/7] app/procinfo: add some extended features Dongdong Liu
2022-09-21 14:26   ` [PATCH v3 1/7] app/procinfo: add dpdk version dump Dongdong Liu
2022-09-23  9:11     ` Pattan, Reshma
2022-09-21 14:26   ` [PATCH v3 2/7] app/procinfo: add firmware " Dongdong Liu
2022-09-23  9:22     ` Pattan, Reshma
2022-09-24  8:03       ` Dongdong Liu
2022-09-21 14:26   ` [PATCH v3 3/7] app/procinfo: add RSS RETA dump Dongdong Liu
2022-09-23  9:42     ` Pattan, Reshma
2022-09-21 14:26   ` [PATCH v3 4/7] app/procinfo: add module info dump Dongdong Liu
2022-09-23  9:51     ` Pattan, Reshma
2022-09-24  8:07       ` Dongdong Liu
2022-09-21 14:26   ` [PATCH v3 5/7] app/procinfo: add dump of Rx/Tx burst mode Dongdong Liu
2022-09-23 10:02     ` Pattan, Reshma
2022-09-24  8:06       ` Dongdong Liu
2022-09-21 14:26   ` [PATCH v3 6/7] app/procinfo: fix some wrong doxygen syntax Dongdong Liu
2022-09-23  7:53     ` Pattan, Reshma
2022-09-24  8:12       ` Dongdong Liu
2022-09-21 14:26   ` [PATCH v3 7/7] doc: add some extended features in procinfo guide Dongdong Liu
2022-09-23  8:57     ` Pattan, Reshma
2022-09-24  8:13 ` [PATCH v7 0/7] app/procinfo: add some extended features Dongdong Liu
2022-09-24  8:13   ` [PATCH v7 1/7] app/procinfo: add dpdk version dump Dongdong Liu
2022-09-24  8:13   ` Dongdong Liu [this message]
2022-09-24  8:13   ` [PATCH v7 3/7] app/procinfo: add RSS RETA dump Dongdong Liu
2022-09-24  8:13   ` [PATCH v7 4/7] app/procinfo: add module eeprom info dump Dongdong Liu
2022-09-26 11:54     ` Pattan, Reshma
2022-09-24  8:13   ` [PATCH v7 5/7] app/procinfo: add dump of Rx/Tx burst mode Dongdong Liu
2022-09-24  8:13   ` [PATCH v7 6/7] app/procinfo: fix some wrong doxygen syntax Dongdong Liu
2022-09-26 12:09     ` Pattan, Reshma
2022-09-24  8:13   ` [PATCH v7 7/7] doc: add some extended features in procinfo guide Dongdong Liu
2022-09-24  8:21   ` [PATCH v7 0/7] app/procinfo: add some extended features Dongdong Liu
2022-10-08  9:39 ` [PATCH v8 0/8] " Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 1/8] app/procinfo: add dpdk version dump Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 2/8] app/procinfo: add firmware " Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 3/8] app/procinfo: add RSS RETA dump Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 4/8] app/procinfo: add module eeprom info dump Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 5/8] app/procinfo: add dump of Rx/Tx burst mode Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 6/8] app/procinfo: fix some wrong doxygen syntax Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 7/8] app/procinfo: support descriptor dump Dongdong Liu
2022-10-08  9:39   ` [PATCH v8 8/8] doc: add some extended features in procinfo guide Dongdong Liu
2022-10-08 10:53 ` [PATCH v9 0/8] app/procinfo: add some extended features Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 1/8] app/procinfo: add dpdk version dump Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 2/8] app/procinfo: add firmware " Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 3/8] app/procinfo: add RSS RETA dump Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 4/8] app/procinfo: add module eeprom info dump Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 5/8] app/procinfo: add dump of Rx/Tx burst mode Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 6/8] app/procinfo: fix some wrong doxygen syntax Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 7/8] app/procinfo: support descriptor dump Dongdong Liu
2022-10-10  9:08     ` Pattan, Reshma
2022-10-10 13:13       ` Dongdong Liu
2022-10-08 10:53   ` [PATCH v9 8/8] doc: add some extended features in procinfo guide Dongdong Liu
2022-10-11 11:18 ` [PATCH v10 0/8] app/procinfo: add some extended features Dongdong Liu
2022-10-11 11:18   ` [PATCH v10 1/8] app/procinfo: add dpdk version dump Dongdong Liu
2022-10-11 11:18   ` [PATCH v10 2/8] app/procinfo: add firmware " Dongdong Liu
2022-10-11 11:18   ` [PATCH v10 3/8] app/procinfo: add RSS RETA dump Dongdong Liu
2022-10-11 11:18   ` [PATCH v10 4/8] app/procinfo: add module eeprom info dump Dongdong Liu
2022-10-11 11:18   ` [PATCH v10 5/8] app/procinfo: add dump of Rx/Tx burst mode Dongdong Liu
2022-10-11 11:18   ` [PATCH v10 6/8] app/procinfo: fix some wrong doxygen syntax Dongdong Liu
2022-10-11 11:18   ` [PATCH v10 7/8] app/procinfo: support descriptor dump Dongdong Liu
2022-10-11 13:38     ` Pattan, Reshma
2022-10-11 11:18   ` [PATCH v10 8/8] doc: add some extended features in procinfo guide Dongdong Liu
2022-10-20  7:48   ` [PATCH v10 0/8] app/procinfo: add some extended features Dongdong Liu
2022-11-04  9:16   ` Dongdong Liu
2022-11-15  9:52   ` David Marchand
2022-11-15 11:00     ` Dongdong Liu

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=20220924081332.21475-3-liudongdong3@huawei.com \
    --to=liudongdong3@huawei.com \
    --cc=andrew.rybchenko@oktetlabs.ru \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@xilinx.com \
    --cc=humin29@huawei.com \
    --cc=maryam.tahhan@intel.com \
    --cc=reshma.pattan@intel.com \
    --cc=thomas@monjalon.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.