aboutsummaryrefslogtreecommitdiffstats
path: root/include/drm/drm_crtc.h
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2014-05-30 11:37:03 -0400
committerDave Airlie <airlied@redhat.com>2014-06-03 23:23:03 -0400
commit98f75de40e9d83c3a90d294b8fd25fa2874212a9 (patch)
treea171ce5ec5c68c94d650e469f3cb3ec5e091006a /include/drm/drm_crtc.h
parent5ea22f24d77b511d68c4ecaf4e6fd5d6ab462b8f (diff)
drm: add object property type
An object property is an id (idr) for a drm mode object. This will allow a property to be used set/get a framebuffer, CRTC, etc. Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'include/drm/drm_crtc.h')
-rw-r--r--include/drm/drm_crtc.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
index 92f6ec2de86a..cb2e599f769f 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -50,6 +50,7 @@ struct drm_clip_rect;
50#define DRM_MODE_OBJECT_BLOB 0xbbbbbbbb 50#define DRM_MODE_OBJECT_BLOB 0xbbbbbbbb
51#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee 51#define DRM_MODE_OBJECT_PLANE 0xeeeeeeee
52#define DRM_MODE_OBJECT_BRIDGE 0xbdbdbdbd 52#define DRM_MODE_OBJECT_BRIDGE 0xbdbdbdbd
53#define DRM_MODE_OBJECT_ANY 0
53 54
54struct drm_mode_object { 55struct drm_mode_object {
55 uint32_t id; 56 uint32_t id;
@@ -190,6 +191,7 @@ struct drm_property {
190 char name[DRM_PROP_NAME_LEN]; 191 char name[DRM_PROP_NAME_LEN];
191 uint32_t num_values; 192 uint32_t num_values;
192 uint64_t *values; 193 uint64_t *values;
194 struct drm_device *dev;
193 195
194 struct list_head enum_blob_list; 196 struct list_head enum_blob_list;
195}; 197};
@@ -980,6 +982,8 @@ struct drm_property *drm_property_create_bitmask(struct drm_device *dev,
980struct drm_property *drm_property_create_range(struct drm_device *dev, int flags, 982struct drm_property *drm_property_create_range(struct drm_device *dev, int flags,
981 const char *name, 983 const char *name,
982 uint64_t min, uint64_t max); 984 uint64_t min, uint64_t max);
985struct drm_property *drm_property_create_object(struct drm_device *dev,
986 int flags, const char *name, uint32_t type);
983extern void drm_property_destroy(struct drm_device *dev, struct drm_property *property); 987extern void drm_property_destroy(struct drm_device *dev, struct drm_property *property);
984extern int drm_property_add_enum(struct drm_property *property, int index, 988extern int drm_property_add_enum(struct drm_property *property, int index,
985 uint64_t value, const char *name); 989 uint64_t value, const char *name);
@@ -995,6 +999,7 @@ extern int drm_mode_crtc_set_gamma_size(struct drm_crtc *crtc,
995 int gamma_size); 999 int gamma_size);
996extern struct drm_mode_object *drm_mode_object_find(struct drm_device *dev, 1000extern struct drm_mode_object *drm_mode_object_find(struct drm_device *dev,
997 uint32_t id, uint32_t type); 1001 uint32_t id, uint32_t type);
1002
998/* IOCTLs */ 1003/* IOCTLs */
999extern int drm_mode_getresources(struct drm_device *dev, 1004extern int drm_mode_getresources(struct drm_device *dev,
1000 void *data, struct drm_file *file_priv); 1005 void *data, struct drm_file *file_priv);