[PATCH 1/4] drm: add plane support

Joonyoung Shim dofmind at gmail.com
Thu Jul 21 03:30:00 PDT 2011


Hi,

simple questions :)

2011/6/21 Jesse Barnes <jbarnes at 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 at 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 at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>



-- 
- Joonyoung Shim


More information about the dri-devel mailing list