PCI Expressのマルチチャネル DMA インテル® FPGA IPユーザー ガイド

ID 683821
日付 4/20/2022
Public
ドキュメント目次

8.4.2.7. SRIOVのサポート

VF デバイスの作成

Netdev ドライバーは、割り込みの有効化をサポートし、仮想関数から DMA を実行します。Netdev ドライバーはSRIOVコールバックをレジスターし、カーネルのインフラストラクチャーによって作成された sysfs インフラストラクチャー・キュアを再利用します。

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

IOMMUのサポート

ホストが IOMMU をサポートしており、ブート・パラメーターから有効になっている場合、Netdev ドライバーは、dma_map_single という API を使用してデバイスメモリーを IOMMU にマップし、ディスクリプターで I/O 仮想アドレスをコンフィグレーションします。これにより、悪意のあるデバイスやセキュリティで保護されていないデバイスによる攻撃からホストを保護できます。 IOMMU が無効になっている場合、netdev は、ホストの MMU によって提供される物理アドレスをコンフィグレーションします。