# Userspace DMA in C/C++

**URL:** <https://discuss.pynq.io/t/userspace-dma-in-c-c/3232>\
**Category:** Support\
**Created:** [October 31, 2021, 7:13pm UTC](https://discuss.pynq.io/t/userspace-dma-in-c-c/3232 "2021-10-31T19:13:57Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Axayacatl](https://avatars.discourse-cdn.com/v4/letter/a/45deac/32.png) [@Axayacatl](https://discuss.pynq.io/u/Axayacatl)\
**Post date:** [October 31, 2021, 7:13pm UTC](https://discuss.pynq.io/t/userspace-dma-in-c-c/3232/1 "2021-10-31T19:13:57Z")

</div>

Hi all,  
I want to create an C/C++ application that is able to send and receive data via axidma and is using interrupt callbacks. I am using a Pynq Z1 with the Glasgow release of this [Pynq image](https://github.com/Xilinx/PYNQ/releases), which is based on Ubuntu 18.04.

Is this possible to achieve without petalinux or recompiling my kernel?

Thank you very much.

---

<div class="post-metadata">

**Author:** ![cathalmccabe](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/cathalmccabe/32/3348_2.png) [@cathalmccabe](https://discuss.pynq.io/u/cathalmccabe)\
**Post date:** [November 4, 2021, 7:10pm UTC](https://discuss.pynq.io/t/userspace-dma-in-c-c/3232/2 "2021-11-04T19:10:03Z")

</div>

Yes, you should be able to, but as you are not using PYNQ for this you would be better searching and posting on the [Xilinx forums](https://forums.xilinx.com/) for help.

Cathal

---

<div class="post-metadata">

**Author:** ![Mikael](https://sea1.discourse-cdn.com/flex019/user_avatar/discuss.pynq.io/mikael/32/2654_2.png) [@Mikael](https://discuss.pynq.io/u/Mikael)\
**Post date:** [November 9, 2021, 12:46pm UTC](https://discuss.pynq.io/t/userspace-dma-in-c-c/3232/3 "2021-11-09T12:46:31Z")

</div>

If you find any way to do this without kernel development, please tell us here, this would be very interesting.  
Thanks.

---

<div class="post-metadata">

**Author:** ![damien.fruleux](https://avatars.discourse-cdn.com/v4/letter/d/2acd7d/32.png) [@damien.fruleux](https://discuss.pynq.io/u/damien.fruleux)\
**Post date:** [March 14, 2022, 3:39pm UTC](https://discuss.pynq.io/t/userspace-dma-in-c-c/3232/4 "2022-03-14T15:39:35Z")

</div>

> [@Axayacatl](#):
>
> possible to achieve without petalinux or recompiling my kernel

I am also interested, thank you in advance 🙂

Damien

---

<div class="post-metadata">

**Author:** ![Axayacatl](https://avatars.discourse-cdn.com/v4/letter/a/45deac/32.png) [@Axayacatl](https://discuss.pynq.io/u/Axayacatl)\
**Post date:** [March 29, 2022, 10:41pm UTC](https://discuss.pynq.io/t/userspace-dma-in-c-c/3232/5 "2022-03-29T22:41:56Z")

</div>

I decided to use a [pynq api](https://github.com/mesham/pynq_api), which calls the pynq overlay methods. I hope that helps you.
