Knowledge Base Article

Why is the PCI Express MSI-X table missing and not enabled in my Configuration via Protocol (CvP) Init design?

Description

MSI-X capabilities will be disabled in Configuration via Protocol (CvP) initialization mode designs if the PCI Express driver attempts to enumerate the device registers before the core is loaded. The MSI-X table requires the core to be loaded because the memory for the table is found in the core image. The table is not available in the periphery CvP image.

Resolution
  1. Set up the MSI-X in the PCI Express variant being used and ensure MSI-X is enabled.
  2. Load the periphery image via flash.
  3. When in the OS, load the core image via software driver (i.e. quartus_cvp).
  4. If a prior driver was set.up:
    Uninstall and reinstall the driver for PCI Express.
    OR
    Disable and re-enable the driver.
  5. Observe that the MSI-X table is set up and interrupts can be observed on the link.
Updated 3 months ago
Version 2.0
No CommentsBe the first to comment