L- and H-Tile Avalon® Streaming and Single Root I/O Virtualization (SR-IOV) Intel® FPGA IP for PCI Express* User Guide

ID 683111
Date 4/23/2024
Document Table of Contents

2.7. Installing the Linux Kernel Driver

Before you can test the design example in hardware, you must install the Linux kernel driver. You can use this driver to perform the following tests:
  • A PCIe* link test that performs 100 writes and reads
  • Memory space DWORD1 reads and writes
  • Configuration Space DWORD reads and writes

In addition, you can use the driver to change the value of the following parameters:

  • The BAR being used
  • The selects device by specifying the bus, device and function (BDF) numbers for the required device

The driver also allows you to enable SR-IOV for H-Tile devices.

Complete the following steps to install the kernel driver:

  1. Navigate to ./software/kernel/linux under the example design generation directory.
  2. Change the permissions on the install, load, and unload files:
    $ chmod 777 install load unload
  3. Install the driver:
    $ sudo ./install
  4. Verify the driver installation:
    $ lsmod | grep intel_fpga_pcie_drv
    Expected result:

    intel_fpga_pcie_drv 17792 0

  5. Verify that Linux recognizes the PCIe* design example:
    $ lspci -d 1172:000 -v | grep intel_fpga_pcie_drv
    Note: If you have changed the Vendor ID, substitute the new Vendor ID for Intel® 's
    Vendor ID in this command.
    Expected result:

    Kernel driver in use: intel_fpga_pcie_drv

1 Throughout this user guide, the terms word, DWORD and QWORD have the same meaning that they have in the PCI Express Base Specification. A word is 16 bits, a DWORD is 32 bits, and a QWORD is 64 bits.