Re: [PATCH] Generic WorkQueue Engine (GenWQE) device driver

From: Bjorn Helgaas
Date: Wed Oct 23 2013 - 14:27:31 EST


On Thu, Jul 25, 2013 at 2:28 AM, Frank Haverkamp <haver@xxxxxxxxxxxx> wrote:
> The GenWQE card provides access to a generic work queue into which the
> work can be put, which should be executed, e.g. compression or
> decompression request, or whatever the card was configured to do.
>
> Each request comes with a set of input data (ASV) and will produce some
> output data (ASIV). The request will also contain a sequence number,
> some timestamps and a command code/subcode plus some fields for hardware-/
> software-interaction.
>
> A request can contain references to blocks of memory. Since the card
> requires DMA-addresses of that memory, the driver provides two ways to
> solve that task:
> 1) The drivers mmap() will allocate some DMAable memory for the user.
> The driver has a lookup table such that the virtual userspace
> address can properly be replaced and checked.
> 2) The user allocates memory and the driver will pin/unpin that
> memory and setup a scatter gatherlist with matching DMA addresses.
>
> Currently work requests are synchronous.
>
> The genwqe driver has a user-space interface described in
> linux/include/genwqe/genwqe_card.h. There are several ioctls which can
> be used to talk to the driver. In addition there are some sysfs
> entries where information can be exchanged with user-space.
>
> Known Restrictions:
>
> o On my PowerPC testsystem SRIOV did not work.

Does this restriction still apply? Is there some PCI core issue here?
We did fix an SR-IOV issue that was reported on PowerPC with
aa914f5ec25, so maybe that's related. But if there's still a PCI core
issue here, let me know.

Bjorn
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/