All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 1/2] drm: Add DRM_GEM_FOPS
@ 2022-06-09 17:42 ` Rob Clark
  0 siblings, 0 replies; 15+ messages in thread
From: Rob Clark @ 2022-06-09 17:42 UTC (permalink / raw)
  To: dri-devel
  Cc: freedreno, linux-arm-msm, Tvrtko Ursulin, Thomas Zimmermann,
	Chris Healy, Rob Clark, Maarten Lankhorst, Maxime Ripard,
	David Airlie, Daniel Vetter, open list

From: Rob Clark <robdclark@chromium.org>

The DEFINE_DRM_GEM_FOPS() helper is a bit limiting if a driver wants to
provide additional file ops, like show_fdinfo().

v2: Split out DRM_GEM_FOPS instead of making DEFINE_DRM_GEM_FOPS
    varardic
v3: nits

Signed-off-by: Rob Clark <robdclark@chromium.org>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 include/drm/drm_gem.h | 26 ++++++++++++++++++--------
 1 file changed, 18 insertions(+), 8 deletions(-)

diff --git a/include/drm/drm_gem.h b/include/drm/drm_gem.h
index 9d7c61a122dc..87cffc9efa85 100644
--- a/include/drm/drm_gem.h
+++ b/include/drm/drm_gem.h
@@ -314,6 +314,23 @@ struct drm_gem_object {
 	const struct drm_gem_object_funcs *funcs;
 };
 
+/**
+ * DRM_GEM_FOPS - Default drm GEM file operations
+ *
+ * This macro provides a shorthand for setting the GEM file ops in the
+ * &file_operations structure.  If all you need are the default ops, use
+ * DEFINE_DRM_GEM_FOPS instead.
+ */
+#define DRM_GEM_FOPS \
+	.open		= drm_open,\
+	.release	= drm_release,\
+	.unlocked_ioctl	= drm_ioctl,\
+	.compat_ioctl	= drm_compat_ioctl,\
+	.poll		= drm_poll,\
+	.read		= drm_read,\
+	.llseek		= noop_llseek,\
+	.mmap		= drm_gem_mmap
+
 /**
  * DEFINE_DRM_GEM_FOPS() - macro to generate file operations for GEM drivers
  * @name: name for the generated structure
@@ -330,14 +347,7 @@ struct drm_gem_object {
 #define DEFINE_DRM_GEM_FOPS(name) \
 	static const struct file_operations name = {\
 		.owner		= THIS_MODULE,\
-		.open		= drm_open,\
-		.release	= drm_release,\
-		.unlocked_ioctl	= drm_ioctl,\
-		.compat_ioctl	= drm_compat_ioctl,\
-		.poll		= drm_poll,\
-		.read		= drm_read,\
-		.llseek		= noop_llseek,\
-		.mmap		= drm_gem_mmap,\
+		DRM_GEM_FOPS,\
 	}
 
 void drm_gem_object_release(struct drm_gem_object *obj);
-- 
2.36.1


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

end of thread, other threads:[~2022-06-25  3:32 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-09 17:42 [PATCH v3 1/2] drm: Add DRM_GEM_FOPS Rob Clark
2022-06-09 17:42 ` Rob Clark
2022-06-09 17:42 ` [PATCH v3 2/2] drm/msm: Expose client engine utilization via fdinfo Rob Clark
2022-06-09 17:42   ` Rob Clark
2022-06-15 12:44   ` Dmitry Baryshkov
2022-06-15 12:44     ` Dmitry Baryshkov
2022-06-15 12:52   ` Tvrtko Ursulin
2022-06-15 12:52     ` Tvrtko Ursulin
2022-06-15 12:45 ` [PATCH v3 1/2] drm: Add DRM_GEM_FOPS Dmitry Baryshkov
2022-06-15 12:45   ` Dmitry Baryshkov
2022-06-15 13:46   ` Thomas Zimmermann
2022-06-24 20:48 ` Daniel Vetter
2022-06-24 20:48   ` Daniel Vetter
2022-06-25  3:32   ` Rob Clark
2022-06-25  3:32     ` Rob Clark

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.