Hi,
simple questions :)
2011/6/21 Jesse Barnes jbarnes@virtuousgeek.org:
Planes are a bit like half-CRTCs. They have a location and fb, but don't drive outputs directly. Add support for handling them to the core KMS code.
Signed-off-by: Jesse Barnes jbarnes@virtuousgeek.org
drivers/gpu/drm/drm_crtc.c | 235 +++++++++++++++++++++++++++++++++++++++++++- drivers/gpu/drm/drm_drv.c | 3 + include/drm/drm.h | 3 + include/drm/drm_crtc.h | 73 ++++++++++++++- include/drm/drm_mode.h | 35 +++++++ 5 files changed, 346 insertions(+), 3 deletions(-)
snip
diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h index c4961ea..fa6d348 100644 --- a/include/drm/drm_mode.h +++ b/include/drm/drm_mode.h @@ -120,6 +120,41 @@ struct drm_mode_crtc { struct drm_mode_modeinfo mode; };
+/* Planes blend with or override other bits on the CRTC */ +struct drm_mode_set_plane {
- __u32 plane_id;
- __u32 crtc_id;
- __u32 fb_id; /* fb object contains surface format type */
- /* Signed dest location allows it to be partially off screen */
- __s32 crtc_x, crtc_y;
Is this location offset from base(0, 0) of fb for plane, or from base of crtc(mode)?
- __u32 crtc_w, crtc_h;
What is it for? size of plane?
- /* Source values are 16.16 fixed point */
- __u32 src_x, src_y;
- __u32 src_h, src_w;
What are these for?
- __u32 zpos;
Is this for order of plane(overlay)?
+};
+struct drm_mode_get_plane {
- __u64 format_type_ptr;
- __u32 plane_id;
- __u32 crtc_id;
- __u32 fb_id;
- __u32 possible_crtcs;
- __u32 gamma_size;
- __u32 count_format_types;
+};
+struct drm_mode_get_plane_res {
- __u64 plane_id_ptr;
- __u32 count_planes;
+};
#define DRM_MODE_ENCODER_NONE 0 #define DRM_MODE_ENCODER_DAC 1 #define DRM_MODE_ENCODER_TMDS 2 -- 1.7.4.1
dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel