5.11. Linux DPDK - emllDpdk

The Real-time Ethernet Driver DPDK is based on the Data Plane Development Kit (DPDK). See https://www.dpdk.org for more informations. It does not need the atemsys driver and uses Ethernet adapters that are bound to the DPDK interface.

Note

Root privileges are required.

The interface can be configurated using the following steps:

  1. Install the DPDK library (V23.11) on the Linux system.

  2. Bind the needed devices to a DPDK-compatible driver. The driver may also need to be loaded, as it may be unloaded per default.
    sudo modprobe uio_pci_generic
    ./usertools/dpdk-devbind.py --bind=uio_pci_generic 03:00.0
    

    Check https://doc.dpdk.org/guides/linux_gsg/linux_drivers.html for more infos regarding the drivers.

  3. Create huge pages
    mkdir -p /dev/hugepages
    mountpoint -q /dev/hugepages || mount -t hugetlbfs nodev /dev/hugepages
    echo 256 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages
    

The parameters to the Real-time Ethernet Driver DPDK are setup-specific. The function CreateLinkParmsFromCmdLineDpdk() in EcSelectLinkLayer.cpp demonstrates how to initialize the Real-time Ethernet Driver instance.

Public Members

Common link parameters. Signature must be set to EC_LINK_PARMS_SIGNATURE_DPDK

DPDK port ID