Note - Be aware that this instructions are not applicable for the NFP4C SDK use case!

Netronome smartNIC's can operate in a number of different modes by loading different firmware to the smartNIC. The NFP driver is responisble for locating and loading these firmware files to the smartNIC. The firmware files are located in /lib/firmware/netronome

Note:  Netronome's firmware has been up streamed in Ubuntu 18.04 and RHEL/CentOS 7.5. Please consult the following page on installation instructions of firmware packages for older systems

By default, Netronome's basic firmware is loaded. To switch to flower firmware and enable OVS acceleration the symlinks in /lib/firmware/netronome are re-created to point to the firmware files located in the flower sub-directory.

cd /lib/firmware/netronome
rm -f *.nffw
for firmware in $(ls flower); do ln -sf flower/$firmware $firmware; done

A driver reload is required to load the new firmware

modprobe -r nfp
modprobe nfp

Additionally, the initram image need to be updated to insure the correct firmware gets loaded at boot

For RHEL/CentOS based systems:

dracut -f

For Debian/Ubuntu based systems:

update-initramfs -u

Note: If the OS updates its linux-firmware package these symlinks will be changed back to the original configuration and the steps above will have to be repeated