DMA driver support for data transfer throug PCIe in LS1088 board

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

DMA driver support for data transfer throug PCIe in LS1088 board

1,602 Views
Beuny
Contributor I

We are using LS1088 board and we have a requirement to transfer  data from LS1088 to a slave device  via PCIe . We need to use the DMA engine inside LS1088 for the data transfer via PCIe.Does LS1088 has the support for datat transfer via PCIe? can you provide the DMA driver support and sample application  for the PCIe data transfer.

ls1088.png

0 Kudos
Reply
3 Replies

1,556 Views
Beuny
Contributor I

Thanks @r8070z 

I had referred the Layerscape Software Development Kit User Guide( v20.04) in the link https://www.nxp.com/docs/en/user-guide/LSDKUG_Rev20.04.pdf 

As per the document we followed the steps listed below

1. Downloaded  flexbuild_lsdk2004
2. source setup.env
3. flex-builder docker
4. flex-builder -i repo fetch (The GIT branch is LSDK-20.04-V5.4) 
5. In the "make menuconfig" window, we not able to find "NXP DPAA2 QDMA Driver Support".Kernel_config.png

How we can get the support for NXP qDMA Driver? Is there anything else do we need to configure / follow to get the support?

0 Kudos
Reply

1,523 Views
r8070z
NXP Employee
NXP Employee

I myself have not built kernel yet, but I’ve seen technical cases which definitely show that qDMA driver can be built for the LS1088A. Then I checked the LSDK in this way

Install Ubuntu 18.04; Load from the nxp site and unpack to my home folder flexbuild_lsdk2004

~$ ls

Desktop    flexbuild_lsdk2004 ...

Then execute the next commands

~$ cd flexbuild_lsdk2004

~/flexbuild_lsdk2004$ source setup.env

~/flexbuild_lsdk2004$ flex-builder -c linux:custom -a arm64

Downloading takes few hours. At the end I got kernel config where like in the LSDK document I could see

Device Drivers --->

[*] DMA Engine support ---> --->

<*>  NXP DPAA2 QDMA

I did not start to build kernel. I just checked that there is source for the DPAA2 driver too
~/flexbuild_lsdk2004/build/linux/kernel/arm64/LS/output/LSDK-20.04-V5.4/source/drivers/dma/fsl-dpaa2-qdma$ ls

dpaa2-qdma.c  dpaa2-qdma.h  dpdmai.c  dpdmai.h  Kconfig  Makefile

0 Kudos
Reply

1,590 Views
r8070z
NXP Employee
NXP Employee

The LS1088A qDMA supports data transfer via PCIe. The nxp LSDK provides the DMA diver and sample application for the PCIe data transfer. The sample application does a memory-to-memory or memory to pci memory or pci memory to memory transaction using this QDMA block. For details please see “QDMA for platform with DPAA2” and “qdma-demo application” in  the LSDK user guide

https://www.nxp.com/design/software/embedded-software/linux-software-and-development-tools/layerscap...

0 Kudos
Reply