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

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

8.1.2.1. Channel Initialization

When libmqdma is handing over the available channel to the application, it performs the following functions:

  1. Reset the channel
    • The libmqdma sets the reset register of the channel.
    • Polls the register back till the reset happens.

    This process resets the queue logic and sets all the channel parameters to default.

  2. Initialize the channel
    • Allocates the required number of descriptors in the host.
    • Update the starting address of the descriptors to the registers.
    • Update the number of descriptors.

    Based on these parameters, hardware performs queue management.

  3. Enable the channel