2011/7/25 Rob Clark <robdclark@xxxxxxxxx>: > On Mon, Jul 25, 2011 at 3:18 AM, Joonyoung Shim <dofmind@xxxxxxxxx> wrote: >> 2011/7/22 Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>: >>> On Thu, 21 Jul 2011 19:30:00 +0900 >>> Joonyoung Shim <dofmind@xxxxxxxxx> wrote: >>> >>>> Hi, >>>> >>>> simple questions :) >>>> >>>> 2011/6/21 Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>: >>>> > 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@xxxxxxxxxxxxxxxx> >>>> > --- >>>> > 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)? >>> >>> This is the offset on the crtc specifically (which could be displaying >>> a nonzero offset of a given fb). >>> >> >> Then if i want to use the specific area of a given fb for overlay, how >> can we know the offset on a given fb? >> In other words, can we use the specific offset from fb to origin(base >> pointer) of plane? or can we use each overlays from each specific >> offsets of one fb? > > The x,y parameters give the position within the fb, the crtc_x,crtc_y > parameters give the position within the crtc (screen).. > Hmm, i can't understand well, which x, y parameters? As you know, struct drm_mode_set_plane hasn't x , y parameters for fb, so how can know x, y parameters? > So if you had full-screen video spanning two 1280x1024 displays, where > the video was 1080p. Say the video was nearly but not completely > full-screen (say, 5 pixel border all around.. just to pick some #'s): > > display one: > plane: x,y=0,0, crtc_x,crtc_y=5,5, crtc_w=1275, crtc_h=1014 > > display two: (to right of display one) > plane: x,y=960,0, crtc_x,crtc_y=0,5, crtc_w=1275, crtc_h=1014 > > (or at least that is my understanding..) > > BR, > -R > >> Thanks. >> >> -- >> - Joonyoung Shim >> _______________________________________________ >> dri-devel mailing list >> dri-devel@xxxxxxxxxxxxxxxxxxxxx >> http://lists.freedesktop.org/mailman/listinfo/dri-devel >> > -- - Joonyoung Shim _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel