[PATCH 1/2] drm: Add DRM_MODE_FB_BFF flag definition
Daniel Vetter
daniel at ffwll.ch
Mon Feb 29 15:32:08 UTC 2016
On Fri, Feb 26, 2016 at 11:33:08AM +0100, Vincent ABRIOU wrote:
> Hi,
>
> Have you any comment for this proposal?
I guess since we don't really have userspace that uses interlaced modes,
much less actually bothers to get the fields correct I think just have
some (open-source) userspace somewhere (does gstreamer care enough about
this?) which needs this and it's good.
Without userspace this is a hard sell.
Thanks, Daniel
>
> BR
> Vincent
>
> On 02/12/2016 10:26 AM, Vincent Abriou wrote:
> > From: Fabien Dessenne <fabien.dessenne at st.com>
> >
> > If a buffer is interlaced, this "Bottom Field First" flag specifies
> > which of the top or the bottom field shall be displayed first.
> > When set, the bottom field shall be displayed first.
> > When unset the top field shall be displayed first.
> >
> > Signed-off-by: Fabien Dessenne <fabien.dessenne at st.com>
> > ---
> > drivers/gpu/drm/drm_crtc.c | 3 ++-
> > include/uapi/drm/drm_mode.h | 1 +
> > 2 files changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> > index d40bab2..64b4fdac 100644
> > --- a/drivers/gpu/drm/drm_crtc.c
> > +++ b/drivers/gpu/drm/drm_crtc.c
> > @@ -3315,7 +3315,8 @@ internal_framebuffer_create(struct drm_device *dev,
> > struct drm_framebuffer *fb;
> > int ret;
> >
> > - if (r->flags & ~(DRM_MODE_FB_INTERLACED | DRM_MODE_FB_MODIFIERS)) {
> > + if (r->flags & ~(DRM_MODE_FB_INTERLACED | DRM_MODE_FB_MODIFIERS
> > + | DRM_MODE_FB_BFF)) {
> > DRM_DEBUG_KMS("bad framebuffer flags 0x%08x\n", r->flags);
> > return ERR_PTR(-EINVAL);
> > }
> > diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
> > index 50adb46..f7c9111 100644
> > --- a/include/uapi/drm/drm_mode.h
> > +++ b/include/uapi/drm/drm_mode.h
> > @@ -354,6 +354,7 @@ struct drm_mode_fb_cmd {
> >
> > #define DRM_MODE_FB_INTERLACED (1<<0) /* for interlaced framebuffers */
> > #define DRM_MODE_FB_MODIFIERS (1<<1) /* enables ->modifer[] */
> > +#define DRM_MODE_FB_BFF (1<<2) /* if interlaced, bottom field first */
> >
> > struct drm_mode_fb_cmd2 {
> > __u32 fb_id;
> >
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the dri-devel
mailing list