Generic DMA-capable streaming device driver looking for home

From: Alex Williams
Date: Thu Apr 20 2017 - 18:25:42 EST


Hi all,

We're writing a device driver and having some difficulty matching a
subsystem to the driver/device properties. Can anyone help with
direction?

These are some basic properties:
1) Device is used to carry generic data to/from userspace. It's a pair
 Âof dumb streams with one sink and one source for each direction (no
 Âaddressable endpoints for the other side).
2) Data goes to/from a DMA engine in an FPGA at high throughput.
3) The driver enables userspace to queue multiple DMA-able buffers for
ÂÂÂasynchronous, pipelined data transfer. We currently use the
 Âvideobuf2 API to provide the feature. We're not carrying video data
 Âin general, though.

It's a piece of a software-defined radio system, and while it can carry
data from DACs/ADCs, the device is only a generic transport. It doesn't
know what data it's carrying, so neither would the driver.

Some guidance would be greatly appreciated. Thanks!
--Alex