From: Pankaj Gupta <pagupta@vmware.com> To: jbehrens@vmware.com Cc: dev@dpdk.org, pagupta@vmware.com Subject: [PATCH v5 4/8] net/vmxnet3: report HW version on FW version get Date: Thu, 12 May 2022 13:06:38 -0400 Message-ID: <20220512170642.28930-5-pagupta@vmware.com> (raw) In-Reply-To: <20220512170642.28930-1-pagupta@vmware.com> Implement fw_version_get API for vmxnet3 Align addition order in vmxnet3_eth_dev_ops with eth_dev_ops Tested, using testpmd, for different hardware version on ESXi 7.0 Update 2. Signed-off-by: Pankaj Gupta <pagupta@vmware.com> Reviewed-by: Jochen Behrens <jbehrens@vmware.com> --- drivers/net/vmxnet3/vmxnet3_ethdev.c | 35 ++++++++++++++++++++++------ 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/drivers/net/vmxnet3/vmxnet3_ethdev.c b/drivers/net/vmxnet3/vmxnet3_ethdev.c index cd32c1b4ee..d14ddfcbeb 100644 --- a/drivers/net/vmxnet3/vmxnet3_ethdev.c +++ b/drivers/net/vmxnet3/vmxnet3_ethdev.c @@ -103,6 +103,10 @@ static int vmxnet3_rss_reta_query(struct rte_eth_dev *dev, struct rte_eth_rss_reta_entry64 *reta_conf, uint16_t reta_size); +static int +vmxnet3_hw_ver_get(struct rte_eth_dev *dev, + char *fw_version, size_t fw_size); + static int vmxnet3_dev_rx_queue_intr_enable(struct rte_eth_dev *dev, uint16_t queue_id); static int vmxnet3_dev_rx_queue_intr_disable(struct rte_eth_dev *dev, @@ -124,27 +128,28 @@ static const struct eth_dev_ops vmxnet3_eth_dev_ops = { .dev_stop = vmxnet3_dev_stop, .dev_close = vmxnet3_dev_close, .dev_reset = vmxnet3_dev_reset, + .link_update = vmxnet3_dev_link_update, .promiscuous_enable = vmxnet3_dev_promiscuous_enable, .promiscuous_disable = vmxnet3_dev_promiscuous_disable, .allmulticast_enable = vmxnet3_dev_allmulticast_enable, .allmulticast_disable = vmxnet3_dev_allmulticast_disable, - .link_update = vmxnet3_dev_link_update, + .mac_addr_set = vmxnet3_mac_addr_set, + .mtu_set = vmxnet3_dev_mtu_set, .stats_get = vmxnet3_dev_stats_get, - .xstats_get_names = vmxnet3_dev_xstats_get_names, - .xstats_get = vmxnet3_dev_xstats_get, .stats_reset = vmxnet3_dev_stats_reset, - .mac_addr_set = vmxnet3_mac_addr_set, + .xstats_get = vmxnet3_dev_xstats_get, + .xstats_get_names = vmxnet3_dev_xstats_get_names, + .fw_version_get = vmxnet3_hw_ver_get, .dev_infos_get = vmxnet3_dev_info_get, .dev_supported_ptypes_get = vmxnet3_dev_supported_ptypes_get, - .mtu_set = vmxnet3_dev_mtu_set, .vlan_filter_set = vmxnet3_dev_vlan_filter_set, .vlan_offload_set = vmxnet3_dev_vlan_offload_set, .rx_queue_setup = vmxnet3_dev_rx_queue_setup, .rx_queue_release = vmxnet3_dev_rx_queue_release, - .tx_queue_setup = vmxnet3_dev_tx_queue_setup, - .tx_queue_release = vmxnet3_dev_tx_queue_release, .rx_queue_intr_enable = vmxnet3_dev_rx_queue_intr_enable, .rx_queue_intr_disable = vmxnet3_dev_rx_queue_intr_disable, + .tx_queue_setup = vmxnet3_dev_tx_queue_setup, + .tx_queue_release = vmxnet3_dev_tx_queue_release, .reta_update = vmxnet3_rss_reta_update, .reta_query = vmxnet3_rss_reta_query, }; @@ -1764,3 +1769,19 @@ vmxnet3_rss_reta_query(struct rte_eth_dev *dev, return 0; } + +static int +vmxnet3_hw_ver_get(struct rte_eth_dev *dev, + char *fw_version, size_t fw_size) +{ + int ret; + struct vmxnet3_hw *hw = dev->data->dev_private; + + ret = snprintf(fw_version, fw_size, "v%d", hw->version); + + ret += 1; /* add the size of '\0' */ + if (fw_size < (uint32_t)ret) + return ret; + else + return 0; +} -- 2.17.1
next prev parent reply other threads:[~2022-05-12 17:07 UTC|newest] Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-05-12 17:06 [PATCH v5 0/8] vmxnet3 version V5 and V6 Pankaj Gupta 2022-05-12 17:06 ` [PATCH v5 1/8] net/vmxnet3: add V5 support Pankaj Gupta 2022-05-12 17:06 ` [PATCH v5 2/8] net/vmxnet3: implement RETA query and RETA update Pankaj Gupta 2022-05-12 17:06 ` [PATCH v5 3/8] net/vmxnet3: add Rx queue usage count utility Pankaj Gupta 2022-05-12 17:06 ` Pankaj Gupta [this message] 2022-05-12 17:06 ` [PATCH v5 5/8] net/vmxnet3: version 6 Pankaj Gupta 2022-05-12 17:06 ` [PATCH v5 6/8] net/vmxnet3: advertise RETA size in device info Pankaj Gupta 2022-05-12 17:06 ` [PATCH v5 7/8] net/vmxnet3: set packet type for fragmented packet Pankaj Gupta 2022-05-12 17:06 ` [PATCH v5 8/8] Fixes: 046f11619567 ("net/vmxnet3: support MSI-X interrupt") Pankaj Gupta
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=20220512170642.28930-5-pagupta@vmware.com \ --to=pagupta@vmware.com \ --cc=dev@dpdk.org \ --cc=jbehrens@vmware.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
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ http://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git