diff options
author | Rob Clark <robdclark@gmail.com> | 2014-05-30 11:37:03 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2014-06-03 23:23:03 -0400 |
commit | 98f75de40e9d83c3a90d294b8fd25fa2874212a9 (patch) | |
tree | a171ce5ec5c68c94d650e469f3cb3ec5e091006a /include/drm/drm_crtc.h | |
parent | 5ea22f24d77b511d68c4ecaf4e6fd5d6ab462b8f (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.h | 5 |
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 | ||
54 | struct drm_mode_object { | 55 | struct 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, | |||
980 | struct drm_property *drm_property_create_range(struct drm_device *dev, int flags, | 982 | struct 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); |
985 | struct drm_property *drm_property_create_object(struct drm_device *dev, | ||
986 | int flags, const char *name, uint32_t type); | ||
983 | extern void drm_property_destroy(struct drm_device *dev, struct drm_property *property); | 987 | extern void drm_property_destroy(struct drm_device *dev, struct drm_property *property); |
984 | extern int drm_property_add_enum(struct drm_property *property, int index, | 988 | extern 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); |
996 | extern struct drm_mode_object *drm_mode_object_find(struct drm_device *dev, | 1000 | extern 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 */ |
999 | extern int drm_mode_getresources(struct drm_device *dev, | 1004 | extern int drm_mode_getresources(struct drm_device *dev, |
1000 | void *data, struct drm_file *file_priv); | 1005 | void *data, struct drm_file *file_priv); |