2.4 Build the Application

  1. Compile the “Zperf” application.

    $ west build -b same54_xpro samples/net/zperf/

  2. Run the command.

    $ west build -t menuconfig

    The menu configuration GUI opens.

  3. Enable asynchronous call support by entering the below directory.
    (Top) → Device Drivers → Serial Peripheral Interface (SPI) bus drivers -> Asynchronous call support
    Note: For SAM0 devices such as the SAM E54 XPro, the SPI driver (spi_sam0.c) implements DMA support through asynchronous call support. Therefore, enabling asynchronous call support is necessary to achieve maximum performance with DMA on these devices. In contrast, the STM32 SPI driver (spi_ll_stm32.c) implements DMA support within synchronous calls. As a result, enabling asynchronous call support on the STM32 platform may limit performance.

    Note: Make sure there is a “*” next to “Asynchronous call support”. If not, select the entry and press the space bar to cycle through the options. The “*” means the drivers will be built into the kernel.
  4. Make sure the “Generic MII PHY Driver” is disabled.

    (Top) → Device Drivers → Ethernet drivers → Ethernet PHY drivers → Generic MII PHY Driver

  5. Set the maximum packet size value to 1460 by entering the below directory.

    (Top) → Subsystems and OS Services → Networking → Link layer and networking (including IP) → Network additional services → zperf library → Maximum packet size

  6. To use “Iperf” 2.0.5 version, enable CONFIG_NET_ZPERF_LEGACY_HEADER_COMPAT.

    (Top) → Subsystems and OS Services → Networking → Link layer and networking (including IP) → Network additional services → zperf library → Legacy iperf UDP header format

    Note: Latest “Zperf” is compatible with “Iperf” 2.0.10 and newer. For compatibility with older versions, enable CONFIG_NET_ZPERF_LEGACY_HEADER_COMPAT. While doing the Network Performance Test, “Iperf” 2.0.5 on the Raspberry Pi® node has been used. Therefore, the above “Legacy Iperf UDP header format” was enabled.
  7. Save and close the configuration.
  8. Build the application again.

    $ west build -b same54_xpro samples/net/zperf/