4. dpdk-pmdinfo Application
The dpdk-pmdinfo.py
tool is a Data Plane Development Kit (DPDK) utility that
can dump a PMDs hardware support info in the JSON format.
4.1. Synopsis
dpdk-pmdinfo.py [-h] [-p] [-v] ELF_FILE [ELF_FILE ...]
4.2. Arguments
- -h, --help
Show the inline help.
- -p, --search-plugins
In addition of
ELF_FILE
s and their linked dynamic libraries, also scan the DPDK plugins path.
- -v, --verbose
Display warnings due to linked libraries not found or ELF/JSON parsing errors in these libraries. Use twice to show debug messages.
- ELF_FILE
DPDK application binary or dynamic library. Any linked
librte_*.so
library (as reported byldd
) will also be analyzed. Can be specified multiple times.
4.3. Environment Variables
- LD_LIBRARY_PATH
If specified, the linked
librte_*.so
libraries will be looked up here first.
4.4. Examples
Get the complete info for a given driver:
$ dpdk-pmdinfo.py /usr/bin/dpdk-testpmd | \
jq '.[] | select(.name == "net_ice_dcf")'
{
"name": "net_ice_dcf",
"params": "cap=dcf",
"kmod": "* igb_uio | vfio-pci",
"pci_ids": [
{
"vendor": "8086",
"device": "1889"
}
]
}
Get only the required kernel modules for a given driver:
$ dpdk-pmdinfo.py /usr/bin/dpdk-testpmd | \
jq '.[] | select(.name == "net_cn10k").kmod'
"vfio-pci"
Get only the required kernel modules for a given device:
$ dpdk-pmdinfo.py /usr/bin/dpdk-testpmd | \
jq '.[] | select(.pci_ids[]? | .vendor == "15b3" and .device == "1013").kmod'
"* ib_uverbs & mlx5_core & mlx5_ib"