kernelnewbies.kernelnewbies.org archive mirror
 help / color / mirror / Atom feed
From: henry.gomersall@smartacoustics.co.uk (Henry Gomersall)
To: kernelnewbies@lists.kernelnewbies.org
Subject: Accessing novel DMAd hardware from userspace
Date: Sat, 21 Nov 2015 18:27:44 +0000	[thread overview]
Message-ID: <5650B7A0.4090707@smartacoustics.co.uk> (raw)

I asked this question on IRC, but my experience has been that IRC is
variable in its reliability, so I apologise for potentially breaking
etiquette.

I've recently been working with a Xilinx Zynq FPGA/ARM combined device,
in which I wish to use DMA to transfer data from the FPGA side to the
ARM side.

Now, this is well supported at the kernel level. Xilinx have a driver
that uses with the DMA engine subsystem

In this email thread:
http://www.spinics.net/lists/dmaengin/msg04599.html there was discussion
about writing a userspace facing driver for presenting the DMAd data and
the transactions.

There wasn't much discussion, but one criticism seemed to be that there
was no place for userspace facing DMA access and that there should be a
driver that encapsulates each device that uses the relevant subsystem.

The problem is, there isn't always a subsystem that fits every weird and
wonderful new bit of hardware that someone might create, which is a
pretty huge space of things when using FPGAs.

What is the preferred way to solve this problem? It was suggested to me
that the uio subsystem is the way to go, and I'm aware of this approach,
but I don't fully understand how to use this.

Does the uio handle the DMA through the DMA engine subsystem, or do I
need to handle the DMA from userspace? If so, can I add this to the uio
driver (to gain the benefits of the DMA engine).

Is there a better way to present entirely new bits of hardware (and
specifically hardware accessed through DMA) to userspace?

Thanks,

Henry

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20151121/9a139b19/attachment.bin 

             reply	other threads:[~2015-11-21 18:27 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-21 18:27 Henry Gomersall [this message]
  -- strict thread matches above, loose matches on Subject: below --
2015-11-21 21:54 Accessing novel DMAd hardware from userspace Henry Gomersall

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5650B7A0.4090707@smartacoustics.co.uk \
    --to=henry.gomersall@smartacoustics.co.uk \
    --cc=kernelnewbies@lists.kernelnewbies.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).