[PATCH] drm/atomic: Hide drm.ko internal interfaces

Daniel Vetter daniel.vetter at ffwll.ch
Thu Dec 18 14:01:06 PST 2014


This is just a bit fallout from patch polishing and moving the
get_prop logic fully into the core:
- Drop EXPORT_SYMBOL and make the helpers static.
- Drop kerneldoc since not used by drivers.
- Move the cross-file function declarations only used by drm.ko
  internally to an internal header.

v2: keep the gist of the comments, requested by Rob.

Cc: Rob Clark <robdclark at gmail.com>
Reviewed-by: Rob Clark <robdclark at gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
---
 drivers/gpu/drm/drm_atomic.c        | 54 +++++--------------------------------
 drivers/gpu/drm/drm_crtc_internal.h |  6 +++++
 drivers/gpu/drm/drm_ioctl.c         |  1 +
 include/drm/drm_atomic.h            | 12 ---------
 4 files changed, 14 insertions(+), 59 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index 67f64bd1058f..1e38dfc8e462 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -247,21 +247,11 @@ int drm_atomic_crtc_set_property(struct drm_crtc *crtc,
 }
 EXPORT_SYMBOL(drm_atomic_crtc_set_property);
 
-/**
- * drm_atomic_crtc_get_property - get property on CRTC
- * @crtc: the drm CRTC to get a property on
- * @state: the state object with the property value to read
- * @property: the property to get
- * @val: the property value (returned by reference)
- *
- * Use this instead of calling crtc->atomic_get_property directly.
+/*
  * This function handles generic/core properties and calls out to
  * driver's ->atomic_get_property() for driver properties.  To ensure
  * consistent behavior you must call this function rather than the
  * driver hook directly.
- *
- * RETURNS:
- * Zero on success, error code on failure
  */
 int drm_atomic_crtc_get_property(struct drm_crtc *crtc,
 		const struct drm_crtc_state *state,
@@ -271,7 +261,6 @@ int drm_atomic_crtc_get_property(struct drm_crtc *crtc,
 		return crtc->funcs->atomic_get_property(crtc, state, property, val);
 	return -EINVAL;
 }
-EXPORT_SYMBOL(drm_atomic_crtc_get_property);
 
 /**
  * drm_atomic_crtc_check - check crtc state
@@ -409,23 +398,14 @@ int drm_atomic_plane_set_property(struct drm_plane *plane,
 }
 EXPORT_SYMBOL(drm_atomic_plane_set_property);
 
-/**
- * drm_atomic_plane_get_property - get property on plane
- * @plane: the drm plane to get a property on
- * @state: the state object with the property value to read
- * @property: the property to get
- * @val: the property value (returned by reference)
- *
- * Use this instead of calling plane->atomic_get_property directly.
+/*
  * This function handles generic/core properties and calls out to
  * driver's ->atomic_get_property() for driver properties.  To ensure
  * consistent behavior you must call this function rather than the
  * driver hook directly.
- *
- * RETURNS:
- * Zero on success, error code on failure
  */
-int drm_atomic_plane_get_property(struct drm_plane *plane,
+static int
+drm_atomic_plane_get_property(struct drm_plane *plane,
 		const struct drm_plane_state *state,
 		struct drm_property *property, uint64_t *val)
 {
@@ -460,7 +440,6 @@ int drm_atomic_plane_get_property(struct drm_plane *plane,
 
 	return 0;
 }
-EXPORT_SYMBOL(drm_atomic_plane_get_property);
 
 /**
  * drm_atomic_plane_check - check plane state
@@ -650,23 +629,14 @@ int drm_atomic_connector_set_property(struct drm_connector *connector,
 }
 EXPORT_SYMBOL(drm_atomic_connector_set_property);
 
-/**
- * drm_atomic_connector_get_property - get property on connector
- * @connector: the drm connector to get a property on
- * @state: the state object with the property value to read
- * @property: the property to get
- * @val: the property value (returned by reference)
- *
- * Use this instead of calling connector->atomic_get_property directly.
+/*
  * This function handles generic/core properties and calls out to
  * driver's ->atomic_get_property() for driver properties.  To ensure
  * consistent behavior you must call this function rather than the
  * driver hook directly.
- *
- * RETURNS:
- * Zero on success, error code on failure
  */
-int drm_atomic_connector_get_property(struct drm_connector *connector,
+static int
+drm_atomic_connector_get_property(struct drm_connector *connector,
 		const struct drm_connector_state *state,
 		struct drm_property *property, uint64_t *val)
 {
@@ -686,17 +656,7 @@ int drm_atomic_connector_get_property(struct drm_connector *connector,
 
 	return 0;
 }
-EXPORT_SYMBOL(drm_atomic_connector_get_property);
 
-/**
- * drm_atomic_get_property - helper to read atomic property
- * @obj: drm mode object whose property to read
- * @property: the property to read
- * @val: the read value, returned by reference
- *
- * RETURNS:
- * Zero on success, error code on failure
- */
 int drm_atomic_get_property(struct drm_mode_object *obj,
 		struct drm_property *property, uint64_t *val)
 {
diff --git a/drivers/gpu/drm/drm_crtc_internal.h b/drivers/gpu/drm/drm_crtc_internal.h
index a2945ee6d675..247dc8b62564 100644
--- a/drivers/gpu/drm/drm_crtc_internal.h
+++ b/drivers/gpu/drm/drm_crtc_internal.h
@@ -36,3 +36,9 @@ int drm_mode_object_get(struct drm_device *dev,
 void drm_mode_object_put(struct drm_device *dev,
 			 struct drm_mode_object *object);
 
+/* drm_atomic.c */
+int drm_atomic_get_property(struct drm_mode_object *obj,
+			   struct drm_property *property, uint64_t *val);
+int drm_mode_atomic_ioctl(struct drm_device *dev,
+			  void *data, struct drm_file *file_priv);
+
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
index a28c0abd1a38..5cb405812245 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
@@ -32,6 +32,7 @@
 #include <drm/drm_core.h>
 #include "drm_legacy.h"
 #include "drm_internal.h"
+#include "drm_crtc_internal.h"
 
 #include <linux/pci.h>
 #include <linux/export.h>
diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
index 231fb485abb3..51168a8b723a 100644
--- a/include/drm/drm_atomic.h
+++ b/include/drm/drm_atomic.h
@@ -41,30 +41,18 @@ drm_atomic_get_crtc_state(struct drm_atomic_state *state,
 int drm_atomic_crtc_set_property(struct drm_crtc *crtc,
 		struct drm_crtc_state *state, struct drm_property *property,
 		uint64_t val);
-int drm_atomic_crtc_get_property(struct drm_crtc *crtc,
-		const struct drm_crtc_state *state,
-		struct drm_property *property, uint64_t *val);
 struct drm_plane_state * __must_check
 drm_atomic_get_plane_state(struct drm_atomic_state *state,
 			   struct drm_plane *plane);
 int drm_atomic_plane_set_property(struct drm_plane *plane,
 		struct drm_plane_state *state, struct drm_property *property,
 		uint64_t val);
-int drm_atomic_plane_get_property(struct drm_plane *plane,
-		const struct drm_plane_state *state,
-		struct drm_property *property, uint64_t *val);
 struct drm_connector_state * __must_check
 drm_atomic_get_connector_state(struct drm_atomic_state *state,
 			       struct drm_connector *connector);
 int drm_atomic_connector_set_property(struct drm_connector *connector,
 		struct drm_connector_state *state, struct drm_property *property,
 		uint64_t val);
-int drm_atomic_connector_get_property(struct drm_connector *connector,
-		const struct drm_connector_state *state,
-		struct drm_property *property, uint64_t *val);
-
-int drm_atomic_get_property(struct drm_mode_object *obj,
-			   struct drm_property *property, uint64_t *val);
 
 int __must_check
 drm_atomic_set_crtc_for_plane(struct drm_plane_state *plane_state,
-- 
2.1.3



More information about the dri-devel mailing list