TL DR: Solved by downloading bnx2x-e2-7.2.51.0.fw and bnx2x-e1h-7.2.51.0.fw
from https://github.com/cernekee/linux-firmware/tree/master/bnx2x
And placing in /lib/firmware/bnx2x
Long story:
Recompiling drivers and running with --log-level 10 gave indication where the
problem was:
juspo@TOR1CN:~/dpdk-stable-16.11.1$ sudo -E
./x86_64-native-linuxapp-gcc/app/testpmd --log-level 10
<snip>
PMD: bnx2x_load_firmware(): Can't open firmware file
Looking at drivers/net/bnx2x/bnx2x.c:
#define FW_NAME_57711 "/lib/firmware/bnx2x/bnx2x-e1h-7.2.51.0.fw"
#define FW_NAME_57810 "/lib/firmware/bnx2x/bnx2x-e2-7.2.51.0.fw"
void bnx2x_load_firmware(struct bnx2x_softc *sc)
{
<snip>
fwname = sc->devinfo.device_id == CHIP_NUM_57711
? FW_NAME_57711 : FW_NAME_57810;
f = open(fwname, O_RDONLY);
if (f < 0) {
PMD_DRV_LOG(NOTICE, "Can't open firmware file");
return;
}
}
Seems that driver is looking for a file that is not there. Ubuntu 16.04.02
comes with:
juspo@TOR1CN:~/dpdk-stable-16.11.1$ ls /lib/firmware/bnx2x/
bnx2x-e1-7.12.30.0.fw bnx2x-e1h-7.12.30.0.fw bnx2x-e2-7.13.1.0.fw
bnx2x-e1-7.13.1.0.fw bnx2x-e1h-7.13.1.0.fw bnx2x-e2-7.12.30.0.fw
Downloading missing firmware files from
https://github.com/cernekee/linux-firmware/tree/master/bnx2x
Made dpdk work.
------------------------------
Message: 6
Date: Tue, 9 May 2017 08:42:39 +0000
From: Justas Poderys <[email protected]>
To: "'[email protected]'" <[email protected]>
Subject: [dpdk-users] Firmware assertion fails with BCM57840 card
Message-ID:
<1356e4aebc79bc4aa3ec88f25de412341230a...@ait-pex01mbx02.win.dtu.dk>
Content-Type: text/plain; charset="us-ascii"
Hello all,
I am trying to setup dpdk on a server with BCM57840 card, however I cannot get
testpmd to run due to the assertion failure:
juspo@TOR1CN:~/dpdk-stable-16.11.1$ sudo -E
./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -- -i
EAL: Detected 24 lcore(s)
EAL: No free hugepages reported in hugepages-1048576kB
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:15:00.0 on NUMA socket -1
EAL: probe driver: 14e4:16a1 net_bnx2x
testpmd: /home/juspo/dpdk-stable-16.11.1/drivers/net/bnx2x/bnx2x_ethdev.c:556:
bnx2x_common_dev_init: Assertion `sc->firmware' failed.
Aborted (core dumped)
Details of my system:
juspo@TOR1CN:~/dpdk-stable-16.11.1$ sudo -E
~/dpdk-stable-16.11.1/tools/dpdk-devbind.py --status
Network devices using DPDK-compatible driver
============================================
0000:15:00.0 'BCM57840 NetXtreme II 10 Gigabit Ethernet' drv=igb_uio
unused=bnx2x,vfio-pci
0000:15:00.1 'BCM57840 NetXtreme II 10 Gigabit Ethernet' drv=igb_uio
unused=bnx2x,vfio-pci
I was following the guide available at
http://www.dpdk.org/doc/guides/nics/bnx2x.html when trying to setup the system.
Thanks for any help.
BR,
~Justas
------------------------------