image image image image image

On This Page

NVIDIA® BlueField® allows control over some of the networking parameters of the PFs and VFs running on the host side.

Setting Host PF and VF Default MAC Address

From the Arm, users may configure the MAC address of the physical function in the host. After sending the command, users must reload the NVIDIA driver in the host to see the newly configured MAC address. The MAC address goes back to the default value in the FW after system reboot.


$ echo "c4:8a:07:a5:29:59" > /sys/class/net/p0/smart_nic/pf/mac
$ echo "c4:8a:07:a5:29:61" > /sys/class/net/p0/smart_nic/vf0/mac

Setting Host PF and VF Link State

vPort state can be configured to Up, Down, or Follow. For example:

$ echo "Follow" > /sys/class/net/p0/smart_nic/pf/vport_state

Querying Configuration

To query the current configuration, run:

$ cat /sys/class/net/p0/smart_nic/pf/config
MAC        : e4:8b:01:a5:79:5e
MaxTxRate  : 0
State      : Follow

Zero signifies that the rate limit is unlimited.

Disabling Host Networking PFs

It is possible to not expose ConnectX networking functions to the host for users interested in using storage or VirtIO functions only. When this feature is enabled, the host PF representors (i.e. pf0hpf and pf1hpf) will not be seen on the Arm.

  • Without a PF on the host, it is not possible to enable SR-IOV, so VF representors will not be seen on the Arm either
  • Without PFs on the host, there can be no SFs on it

To disable host networking PFs, run: 

mlxconfig -d /dev/mst/mt41686_pciconf0 s NUM_OF_PF=0

To reactivate host networking PFs:

  • For single-port DPUs, run:

    mlxconfig -d /dev/mst/mt41686_pciconf0 s NUM_OF_PF=1
  • For dual-port DPUs, run: 

    mlxconfig -d /dev/mst/mt41686_pciconf0 s NUM_OF_PF=2

When there are no networking functions exposed on the host, the reactivation command must be run from the Arm.

Power cycle is required to apply configuration changes.