Multi Channel DMA Intel® FPGA IP for PCI Express* User Guide

ID 683821
Date 1/29/2024
Public
Document Table of Contents

8.3.2.7. SRIOV Support

VF devices creation

Netdev driver supports enabling the interrupts and perform the DMA from virtual functions. Netdev driver registers SRIOV callback and reuses the sysfs infrastructure created by the kernel’s infrastructure.

static struct pci_driver ifc_mcdma_netdev_pci_driver = { 
.name = "ifc_mcdma_netdev", 
.sriov_configure = ifc_mcdma_sriov_configure, 
};

IOMMU Support

If host is supporting IOMMU and is enabled from boot parameters, the Netdev driver maps the device memory to IOMMU by using API called dma_map_single and configure the I/O Virtual address in descriptor. This enables protection to the host from the attacks attempted by malicious or unsecured devices. If IOMMU is disabled, netdev configures the physical address provided by MMU in host.