29. IDPF Poll Mode Driver

The [EXPERIMENTAL] idpf PMD (librte_net_idpf) provides poll mode driver support for Intel® Infrastructure Processing Unit (Intel® IPU) E2100.

29.1. Linux Prerequisites

Follow the DPDK Getting Started Guide for Linux to setup the basic DPDK environment.

To get better performance on Intel platforms, please follow the How to get best performance with NICs on Intel platforms.

29.2. Configuration

29.2.1. Runtime Configuration

  • vport (default 0)

    The PMD supports creation of multiple vports for one PCI device, each vport corresponds to a single ethdev. The user can specify the vports with specific ID to be created, for example:

    -a ca:00.0,vport=[0,2,3]
    

    Then the PMD will create 3 vports (ethdevs) for device ca:00.0.

    If the parameter is not provided, the vport 0 will be created by default.

  • rx_single (default 0)

    There are two queue modes supported by Intel® IPU Ethernet ES2000 Series, single queue mode and split queue mode for Rx queue. User can choose Rx queue mode, example:

    -a ca:00.0,rx_single=1
    

    Then the PMD will configure Rx queue with single queue mode. Otherwise, split queue mode is chosen by default.

  • tx_single (default 0)

    There are two queue modes supported by Intel® IPU Ethernet ES2000 Series, single queue mode and split queue mode for Tx queue. User can choose Tx queue mode, example:

    -a ca:00.0,tx_single=1
    

    Then the PMD will configure Tx queue with single queue mode. Otherwise, split queue mode is chosen by default.

29.3. Driver compilation and testing

Refer to the document Compiling and testing a PMD for a NIC for details.

29.4. Features

29.4.1. Vector PMD

Vector path for Rx and Tx path are selected automatically. The paths are chosen based on 2 conditions:

  • CPU

    On the x86 platform, the driver checks if the CPU supports AVX512. If the CPU supports AVX512 and EAL argument --force-max-simd-bitwidth is set to 512, AVX512 paths will be chosen.

  • Offload features

    The supported HW offload features are described in the document idpf.ini, A value “P” means the offload feature is not supported by vector path. If any not supported features are used, idpf vector PMD is disabled and the scalar paths are chosen.