On Mon, Nov 14, 2011 at 12:21:55PM -0800, Jesse Barnes wrote:
> +struct drm_mode_fb_cmd2 {
> +     __u32 fb_id;
> +     __u32 width, height;
> +     __u32 pixel_format; /* fourcc code from videodev2.h */
> +
> +     /*
> +      * In case of planar formats, this ioctl allows up to 4
> +      * buffer objects with offets and pitches per plane.
> +      * The pitch and offset order is dictated by the fourcc,
> +      * e.g. NV12 (http://fourcc.org/yuv.php#NV12) is described as:
> +      *
> +      *   YUV 4:2:0 image with a plane of 8 bit Y samples
> +      *   followed by an interleaved U/V plane containing
> +      *   8 bit 2x2 subsampled colour difference samples.
> +      *
> +      * So it would consist of Y as offset[0] and UV as
> +      * offeset[1].  Note that offset[0] will generally
> +      * be 0.
> +      */
> +     __u32 handles[4];
> +     __u32 pitches[4]; /* pitch for each plane */
> +     __u32 offsets[4]; /* offset of each plane */
> +};

Hey, what about those interlaced buffers? We talked privately about
adding a '__u32 flags' member to both drm_mode_fb_cmd2 and
drm_mode_set_plane.

We could stick something like these to those flags:
fb_cmd2.flags:
#define DRM_MODE_FB_INTERLACED 0x1

set_plane.flags:
#define DRM_MODE_PRESENT_TOP_FIELD 0x1
#define DRM_MODE_PRESENT_BOTTOM_FIELD 0x2

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to