Files
linux-bredos/include/uapi/linux
Paul Cercueil 7b07a2a7ca usb: gadget: functionfs: Add DMABUF import interface
This patch introduces three new ioctls. They all should be called on a
data endpoint (ie. not ep0). They are:

- FUNCTIONFS_DMABUF_ATTACH, which takes the file descriptor of a DMABUF
  object to attach to the endpoint.

- FUNCTIONFS_DMABUF_DETACH, which takes the file descriptor of the
  DMABUF to detach from the endpoint. Note that closing the endpoint's
  file descriptor will automatically detach all attached DMABUFs.

- FUNCTIONFS_DMABUF_TRANSFER, which requests a data transfer from / to
  the given DMABUF. Its argument is a structure that packs the DMABUF's
  file descriptor, the size in bytes to transfer (which should generally
  be set to the size of the DMABUF), and a 'flags' field which is unused
  for now.
  Before this ioctl can be used, the related DMABUF must be attached
  with FUNCTIONFS_DMABUF_ATTACH.

These three ioctls enable the FunctionFS code to transfer data between
the USB stack and a DMABUF object, which can be provided by a driver
from a completely different subsystem, in a zero-copy fashion.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Christian König <christian.koenig@amd.com>
Link: https://lore.kernel.org/r/20240130122340.54813-4-paul@crapouillou.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-02-17 17:00:09 +01:00
..
2023-05-14 16:05:28 +01:00
2023-05-30 15:20:08 +01:00
2024-01-02 12:41:16 +00:00
2022-08-11 10:31:19 -07:00
2023-12-19 08:23:03 -08:00
2022-06-07 10:20:42 -07:00
2023-12-07 12:44:19 -08:00
2023-01-20 09:33:22 +00:00
2023-03-06 15:49:07 -06:00
2023-09-24 18:17:31 -07:00
2023-03-16 21:20:32 -07:00
2023-09-21 19:22:05 +02:00
2022-08-10 13:49:50 +01:00
2023-10-24 12:02:02 +02:00
2022-09-20 09:13:38 +02:00
2023-12-15 17:01:30 +01:00
2023-06-09 16:25:16 -07:00
2023-12-14 11:49:17 +01:00
2023-04-27 19:15:11 -06:00
2022-09-07 16:46:03 +02:00
2023-11-28 19:05:16 +00:00
2023-10-28 13:31:05 -05:00
2023-12-20 19:26:31 -05:00
2023-11-18 14:56:16 +01:00
2023-10-27 10:35:46 +01:00
2022-11-17 11:04:23 -08:00
2022-09-27 17:29:09 -07:00
2023-06-05 09:36:35 +02:00
2023-12-29 11:58:24 -08:00
2023-03-23 17:25:46 +01:00