This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM2432: Which DMA can be used for PCIe ?

Part Number: AM2432


Hi,

According to the datasheet or TRM, there are some kinds of DMA in the SoC, such like Packet DMA, Block Copy DMA, Peripheral DMA and UDMA.

Which DMA is usually used for PCIe transaction ? Packet DMA ?

Peripheral DMA cannot be used for PCIe ?

Do you have any example code of PCIe with DMA on RTOS or baremetal ?

 

Regards,

Hideaki

  • Hi Matsumoto-san,

    According to the datasheet or TRM, there are some kinds of DMA in the SoC, such like Packet DMA, Block Copy DMA, Peripheral DMA and UDMA.

    Which DMA is usually used for PCIe transaction ? Packet DMA ?

    MH> Packet DMA

    Peripheral DMA cannot be used for PCIe ?

    MH> That is correct.  Peripheral DMA is used with low-speed peripherals.

    Do you have any example code of PCIe with DMA on RTOS or baremetal ?

    MH> PCIe support is planned for MCU+ SDK 8.3. There are issues with PktDMA and PCIe in ES1.0 that are fixed in ES2.0.

    Regards,

    Mike

  • For additional clarification for traffic from PCIe (remote device on the other side reading or writing) PCIe acts as its own initiator, its own DMA to read and write to the AM243x memory.

    For AM243x to write to remote memory over PCIe PktDMA or also BCDMA can be used. Peripheral DMA is intended for local register based peripheral drivers. UDMA is the superset name for the DMAs.

      Pekka