diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2013-06-24 13:07:54 +0200 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2013-06-27 10:13:47 +0200 |
commit | 7a65321722ce14ced68576e0f413a77f865cf846 (patch) | |
tree | a9f462b793d9698530fd787913e88f602bc93dc6 | |
parent | 33f1dc43064cd524e5e03230c80570ac212c2d7c (diff) |
live source headers
-rw-r--r-- | include/drm/drm.h | 4 | ||||
-rw-r--r-- | include/drm/drm_mode.h | 33 |
2 files changed, 37 insertions, 0 deletions
diff --git a/include/drm/drm.h b/include/drm/drm.h index a847689f..03cb863a 100644 --- a/include/drm/drm.h +++ b/include/drm/drm.h @@ -734,6 +734,10 @@ struct drm_prime_handle { #define DRM_IOCTL_MODE_OBJ_GETPROPERTIES DRM_IOWR(0xB9, struct drm_mode_obj_get_properties) #define DRM_IOCTL_MODE_OBJ_SETPROPERTY DRM_IOWR(0xBA, struct drm_mode_obj_set_property) +#define DRM_IOCTL_MODE_GETSOURCERESOURCES DRM_IOWR(0xBB, struct drm_mode_get_live_source_res) +#define DRM_IOCTL_MODE_GETSOURCE DRM_IOWR(0xBC, struct drm_mode_get_live_source) +#define DRM_IOCTL_MODE_SETSOURCE DRM_IOWR(0xBD, struct drm_mode_set_live_source) + /** * Device specific ioctls should only be in their respective headers * The device specific ioctl range is from 0x40 to 0x99. diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h index 62ba997f..6ff9aed3 100644 --- a/include/drm/drm_mode.h +++ b/include/drm/drm_mode.h @@ -31,6 +31,7 @@ #define DRM_CONNECTOR_NAME_LEN 32 #define DRM_DISPLAY_MODE_LEN 32 #define DRM_PROP_NAME_LEN 32 +#define DRM_SOURCE_NAME_LEN 32 #define DRM_MODE_TYPE_BUILTIN (1<<0) #define DRM_MODE_TYPE_CLOCK_C ((1<<1) | DRM_MODE_TYPE_BUILTIN) @@ -157,6 +158,37 @@ struct drm_mode_get_plane_res { __u32 count_planes; }; +struct drm_mode_set_live_source { + __u32 source_id; + + __u32 plane_id; + + __u32 width; + __u32 height; + __u32 pixel_format; +}; + +struct drm_mode_get_live_source { + __u32 source_id; + char name[DRM_SOURCE_NAME_LEN]; + + __u32 plane_id; + + __u32 possible_planes; + + __u32 count_format_types; + __u64 format_type_ptr; + + __u32 width; + __u32 height; + __u32 pixel_format; +}; + +struct drm_mode_get_live_source_res { + __u64 source_id_ptr; + __u32 count_sources; +}; + #define DRM_MODE_ENCODER_NONE 0 #define DRM_MODE_ENCODER_DAC 1 #define DRM_MODE_ENCODER_TMDS 2 @@ -259,6 +291,7 @@ struct drm_mode_connector_set_property { #define DRM_MODE_OBJECT_FB 0xfbfbfbfb #define DRM_MODE_OBJECT_BLOB 0xbbbbbbbb #define DRM_MODE_OBJECT_PLANE 0xeeeeeeee +#define DRM_MODE_OBJECT_LIVE_SOURCE 0xe1e1e1e1 struct drm_mode_obj_get_properties { __u64 props_ptr; |