Dear David,

=================================================
$ lspci | grep -i broadcom
83:00.0 Ethernet controller: Broadcom Inc. and subsidiaries BCM57508 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet (rev 11)
83:00.1 Ethernet controller: Broadcom Inc. and subsidiaries BCM57508 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet (rev 11)
$ lspci -n -s 83:00.0
83:00.0 0200: 14e4:1750 (rev 11)
=================================================

I am compiling my code like this :
=================================================
gcc main.c `pkg-config --cflags libdpdk --libs libdpdk`
=================================================

Hence it is statically linked code.
If I try
$ dpdk-pmdinfo.py ./a.out

But I am not seeing any output



Thanks & Regards
--
Lokesh Chakka.


On Wed, Jul 13, 2022 at 12:22 PM David Marchand <david.marchand@redhat.com> wrote:
On Wed, Jul 13, 2022 at 7:35 AM Lokesh Chakka
<lvenkatakumarchakka@gmail.com> wrote:
> Would like to understand if I am missing something. I am new to this platform.
> rte_eth_dev_count_avail is returning zero.
> OS is Ubuntu 22.04. DPDK is latest version.
> Cards are being detected by Linux. Ifconfig is showing the cards up. LED is also glowing.

Indeed, DPDK provides a userspace driver for some NetXtreme nics
(which is net/bnxt).
This userspace driver does not rely on the bnxt Linux kernel driver.
IOW, this card being detecting and working with the Linux kernel does
not automatically mean that this nic can work with DPDK.

We need more info on your nic, first.

Can you share the pci id of this nic (like running lspci -n -s $pci_address)?
It should be a 14e4:XXXX.

Then you can check this XXXX against what your dpdk application supports.

If it is a statically linked application, you can run:
$ dpdk-pmdinfo.py /path/to/your/application

Else, if your application is dynamically linked against DPDK driver,
you can run this command against the net/bnxt driver .so.22 (for 21.11
and later releases):
$ dpdk-pmdinfo.py /path/to/your/dpdk/drivers/librte_net_bnxt.so.22

You should get a list of supported NetXtreme nics, like:

[snipped some other drivers compiled in my application]
PMD NAME: net_bnxt
PMD HW SUPPORT:
 Broadcom Inc. and subsidiaries (14e4) : BCM5745X NetXtreme-E RDMA
Virtual Function (1606) (All Subdevices)
 Broadcom Inc. and subsidiaries (14e4) : BCM5745X NetXtreme-E Ethernet
Virtual Function (1609) (All Subdevices)
 Broadcom Inc. and subsidiaries (14e4) : BCM57454 NetXtreme-E
10Gb/25Gb/40Gb/50Gb/100Gb Ethernet (1614) (All Subdevices)
 Broadcom Inc. and subsidiaries (14e4) : NetXtreme-E RDMA Virtual
Function (16c1) (All Subdevices)
 Broadcom Inc. and subsidiaries (14e4) : NetXtreme-C Ethernet Virtual
Function (16cb) (All Subdevices)
[snipped the rest]

I hope you can find a (XXXX) corresponding to your NIC.


--
David Marchand