All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] dmabuf: allow exporter to define customs ioctls
@ 2016-03-09  8:54 ` Benjamin Gaignard
  0 siblings, 0 replies; 8+ messages in thread
From: Benjamin Gaignard @ 2016-03-09  8:54 UTC (permalink / raw)
  To: dri-devel, linux-media, sumit.semwal, john.stultz; +Cc: Benjamin Gaignard

In addition of the already existing operations allow exporter
to use it own custom ioctls.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
---
 drivers/dma-buf/dma-buf.c | 3 +++
 include/linux/dma-buf.h   | 5 +++++
 2 files changed, 8 insertions(+)

diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c
index 9810d1d..6abd129 100644
--- a/drivers/dma-buf/dma-buf.c
+++ b/drivers/dma-buf/dma-buf.c
@@ -291,6 +291,9 @@ static long dma_buf_ioctl(struct file *file,
 
 		return 0;
 	default:
+		if (dmabuf->ops->ioctl)
+			return dmabuf->ops->ioctl(dmabuf, cmd, arg);
+
 		return -ENOTTY;
 	}
 }
diff --git a/include/linux/dma-buf.h b/include/linux/dma-buf.h
index 532108e..b6f9837 100644
--- a/include/linux/dma-buf.h
+++ b/include/linux/dma-buf.h
@@ -70,6 +70,9 @@ struct dma_buf_attachment;
  * @vmap: [optional] creates a virtual mapping for the buffer into kernel
  *	  address space. Same restrictions as for vmap and friends apply.
  * @vunmap: [optional] unmaps a vmap from the buffer
+ * @ioctl: [optional] ioctls supported by the exporter.
+ *	   It is up to the exporter to do the proper copy_{from/to}_user
+ *	   calls. Should return -EINVAL in case of error.
  */
 struct dma_buf_ops {
 	int (*attach)(struct dma_buf *, struct device *,
@@ -104,6 +107,8 @@ struct dma_buf_ops {
 
 	void *(*vmap)(struct dma_buf *);
 	void (*vunmap)(struct dma_buf *, void *vaddr);
+
+	int (*ioctl)(struct dma_buf *, unsigned int cmd, unsigned long arg);
 };
 
 /**
-- 
1.9.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-03-09 10:08 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-09  8:54 [PATCH] dmabuf: allow exporter to define customs ioctls Benjamin Gaignard
2016-03-09  8:54 ` Benjamin Gaignard
2016-03-09  9:03 ` Daniel Vetter
2016-03-09  9:03   ` Daniel Vetter
2016-03-09  9:18   ` Christian König
2016-03-09  9:18     ` Christian König
2016-03-09  9:40     ` Benjamin Gaignard
2016-03-09 10:08       ` Daniel Vetter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.