aes-stream-drivers

Contents

  • Tutorials
    • Your First Data Transfer
      • Prerequisites
      • Step 1 — Detect the Hardware
      • Step 2 — Build the Driver and Utilities
      • Step 3 — Load the Driver
      • Step 4 — Inspect the /proc Interface
      • Step 5 — Run the Loopback Test
      • Step 6 — Unload the Driver
      • Next Steps
    • Your First GPUDirect Transfer
      • Prerequisites
      • Step 1 — Disable the Display Manager
      • Step 2 — Install NVIDIA Open Kernel Modules
      • Step 3 — Configure GRUB
      • Step 4 — Build and Load All Drivers
      • Step 5 — Verify GPUDirect Support
      • Step 6 — Run rdmaTest
      • Next Steps
  • How-to Guides
    • Build and Load the Driver
      • Prerequisites
      • Build the Driver
      • Load the Driver
      • Configure Persistent Loading (modprobe.d)
      • Unload the Driver
      • Parameter Reference
    • Cross-Compile for RCE (ARM/Zynq)
      • Prerequisites
      • Build at SLAC (Shortcut)
      • Build Outside SLAC
        • ARM/Zynq Target
        • x86 Buildroot Target
      • Output Location
    • Integrate into a Yocto Project
      • Prerequisites
      • Step 1 — Create or Identify Your Layer
      • Step 2 — Copy the Recipe
      • Step 3 — Enable the Module in Your Build
      • Step 4 — Set Buffer Parameters
      • Step 5 — Add the Device Tree Node
      • Step 6 — Build
      • aximemorymap Variant
    • Install via DKMS
      • Prerequisites
        • Ubuntu / Debian
        • Rocky Linux 9 / RHEL 9
        • CentOS 7 / RHEL 7
        • RHEL with Subscription
      • Installation Methods
        • Method 1: Install from Release Tarball (Recommended)
        • Method 2: Manual Source Installation
      • Verification
        • Check Installation Status
        • Verify Module Information
        • Load the Module
        • Auto-load on Boot
      • Uninstallation
        • Remove DKMS Module
      • Platform-Specific Notes
        • Ubuntu 22.04 / 24.04
        • Rocky Linux 9
        • CentOS 7
        • Debian Testing / Experimental
      • Troubleshooting
        • DKMS Build Failures
        • Missing Kernel Headers
        • EPEL Not Available
        • Module Load Failures
        • Kernel Version Mismatch
      • See Also
    • Set Up GPUDirect RDMA
      • Prerequisites
      • Step 1 — Disable Display Manager Services
      • Step 2 — Remove Existing NVIDIA Drivers
      • Step 3 — Install NVIDIA Open Kernel Modules
      • Step 4 — Configure GRUB
      • Step 5 — Build and Load Both Drivers
      • Verify
    • Route Multiple DMA Channels
      • Overview
      • Subscribe to a Single Channel
      • Subscribe to Multiple Channels
      • Send to a Specific Channel
      • Receive and Return Buffers
      • Multiple Clients on One Device
  • Reference
    • DMA Driver API
      • DMA_VERSION
      • DMA_ERR_FIFO
      • DMA_ERR_LEN
      • DMA_ERR_MAX
      • DMA_ERR_BUS
      • DMA_Get_Buff_Count
      • DMA_Get_Buff_Size
      • DMA_Set_Debug
      • DMA_Set_Mask
      • DMA_Ret_Index
      • DMA_Get_Index
      • DMA_Read_Ready
      • DMA_Set_MaskBytes
      • DMA_Get_Version
      • DMA_Write_Register
      • DMA_Read_Register
      • DMA_Get_RxBuff_Count
      • DMA_Get_TxBuff_Count
      • DMA_Get_TxBuffinUser_Count
      • DMA_Get_TxBuffinHW_Count
      • DMA_Get_TxBuffinPreHWQ_Count
      • DMA_Get_TxBuffinSWQ_Count
      • DMA_Get_TxBuffMiss_Count
      • DMA_Get_RxBuffinUser_Count
      • DMA_Get_RxBuffinHW_Count
      • DMA_Get_RxBuffinPreHWQ_Count
      • DMA_Get_RxBuffinSWQ_Count
      • DMA_Get_RxBuffMiss_Count
      • DMA_Get_GITV
      • DMA_MASK_SIZE
      • dmaWrite()
      • dmaWriteIndex()
      • dmaWriteVector()
      • dmaWriteIndexVector()
      • dmaRead()
      • dmaReadIndex()
      • dmaReadBulkIndex()
      • dmaRetIndex()
      • dmaRetIndexes()
      • dmaGetIndex()
      • dmaReadReady()
      • dmaGetRxBuffCount()
      • dmaGetRxBuffinUserCount()
      • dmaGetRxBuffinHwCount()
      • dmaGetRxBuffinPreHwQCount()
      • dmaGetRxBuffinSwQCount()
      • dmaGetRxBuffMissCount()
      • dmaGetTxBuffCount()
      • dmaGetTxBuffinUserCount()
      • dmaGetTxBuffinHwCount()
      • dmaGetTxBuffinPreHwQCount()
      • dmaGetTxBuffinSwQCount()
      • dmaGetTxBuffMissCount()
      • dmaGetBuffSize()
      • dmaGetBuffCount()
      • dmaMapDma()
      • dmaUnMapDma()
      • dmaSetDebug()
      • dmaAssignHandler()
      • dmaSetMask()
      • dmaInitMaskBytes()
      • dmaAddMaskBytes()
      • dmaSetMaskBytes()
      • dmaCheckVersion()
      • dmaGetApiVersion()
      • dmaWriteRegister()
      • dmaReadRegister()
      • dmaMapRegister()
      • dmaUnMapRegister()
      • DmaWriteData
        • data
        • dest
        • flags
        • index
        • size
        • is32
        • pad
      • DmaReadData
        • data
        • dest
        • flags
        • index
        • error
        • size
        • is32
        • ret
      • DmaRegisterData
        • address
        • data
    • AXIS Driver API
      • AXIS_Read_Ack
      • AXIS_Write_ReqMissed
      • axisSetFlags()
      • axisGetFuser()
      • axisGetLuser()
      • axisGetCont()
      • axisReadAck()
      • axisWriteReqMissed()
    • GPU Async API
      • Ioctl Wrappers (GpuAsync.h)
        • GPU_Add_Nvidia_Memory
        • GPU_Rem_Nvidia_Memory
        • GPU_Set_Write_Enable
        • GPU_Is_Gpu_Async_Supp
        • GPU_Get_Gpu_Async_Ver
        • GPU_Get_Max_Buffers
        • gpuAddNvidiaMemory()
        • gpuRemNvidiaMemory()
        • gpuSetWriteEn()
        • gpuIsGpuAsyncSupported()
        • gpuGetGpuAsyncVersion()
        • gpuGetMaxBuffers()
        • GpuNvidiaData
      • Register Wrapper (GpuAsyncUser.h)
        • GpuAsyncCoreRegs
      • CUDA Helpers (GpuAsyncLib.h)
        • deviceFunc
        • globalFunc
        • hostFunc
        • checkError()
        • checkError()
        • wasError()
        • gpuMapHostFpgaMem()
        • gpuMapFpgaMem()
        • gpuUnmapFpgaMem()
        • gpuInitBufferState()
        • gpuDestroyBufferState()
        • UnpackAxiWriteDescriptor()
        • DataGPU
        • CudaContext
        • GpuDmaBuffer_t
        • GpuBufferState_t
        • AxiWrDesc64_t
    • Ioctl Command Code Reference
      • DmaDriver.h Commands
      • AxisDriver.h Commands
      • AxiVersion.h Commands
      • GpuAsync.h Commands
    • Module Parameters — datadev
    • Device Nodes
      • /dev/ — Character Devices
      • /proc/ — Diagnostic Interface
      • Multi-Device Systems
    • Test Applications
      • DMA Loopback and Throughput
        • dmaLoopTest
        • dmaRate
      • Ioctl and File Operations
        • dmaIoctlTest
        • dmaFileOpsTest
      • Error Path Testing
        • dmaErrorTest
        • dmaSmallFrameTest
      • GPU-Specific Testing
        • dmaGpuIoctlTest
        • rdmaTestEmu
        • dmaGpuToggleTest
      • Shell-Based Test Harness
    • User Space DMA API
  • Explanation
    • Driver Architecture
      • The Hardware Abstraction Vtable
      • Component Relationships
      • PCIe BAR0 Memory Map
      • PCI Device Identification
      • Further Reading
    • DMA Buffer Modes
      • The Three Buffer Modes
      • Why cfgMode=4 Is Rejected for data_dev
      • Buffer Pool Pre-Allocation
      • Buffer State Machine
      • Zero-Copy Data Path
      • Further Reading
    • AXI Stream Protocol
      • Frame Boundaries and TLAST
      • The Flags Field: fuser, luser, and cont
      • Channel Routing via TDEST
      • AxisG2 Engine Overview
      • Further Reading
    • Kernel Compatibility
      • How the Guards Work
      • Compatibility Matrix
      • RHEL Backport Detection
      • Minimum and Maximum Tested Kernels
      • Further Reading
    • CI Pipeline and Test Coverage
      • Pipeline Phases
      • Distribution Matrix
      • Phase 2: CPU Test Coverage
      • Phase 3: GPU Test Coverage
      • Emulator Architecture
      • Emulator GPU Poll Thread
      • DKMS Packaging
      • Local CI Testing
      • Test Coverage Summary
aes-stream-drivers
  • Search


© Copyright 2026, SLAC National Accelerator Laboratory.

Built with Sphinx using a theme provided by Read the Docs.