F-Tile Avalon® Streaming Intel® FPGA IP for PCI Express* Design Example User Guide

ID 683372
Date 5/23/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

3.6. Installing the Linux Kernel Driver

Before you can test the design example in hardware, you must configure the FPGA and then restart your computer to allow the enumerate to take place for the PCIe device. After that, 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 DWORD(1) reads and writes
  • Configuration Space DWORD reads and writes
Note: Throughout this user guide, the term word DWORD has the same meaning as in the PCI Express Base Specification. A word is 16 bits and a DWORD is 32 bits.
In addition, you can use the driver to change the value of the following parameters:
  • The BAR being used
  • The selected device (by specifying the bus, device and function (BDF) numbers for the device)

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
    Expected result. Kernel driver in use:
    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.