Message ID | 1429173804-27064-1-git-send-email-jy0922.shim@samsung.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Joonyoung, 2015-04-16 Joonyoung Shim <jy0922.shim@samsung.com>: > The exynos_update_plane function needs 16.16 fixed point source data. > > Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> > --- > drivers/gpu/drm/exynos/exynos_drm_crtc.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c > index eb49195..f0bdaca 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c > @@ -127,7 +127,8 @@ static int exynos_drm_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, > crtc_h = fb->height - y; > > return exynos_update_plane(crtc->primary, crtc, fb, 0, 0, > - crtc_w, crtc_h, x, y, crtc_w, crtc_h); > + crtc_w, crtc_h, x << 16, y << 16, > + crtc_w << 16, crtc_h << 16); > } > > static void exynos_drm_crtc_disable(struct drm_crtc *crtc) > @@ -202,8 +203,8 @@ static int exynos_drm_crtc_page_flip(struct drm_crtc *crtc, > crtc_w = fb->width - crtc->x; > crtc_h = fb->height - crtc->y; > ret = exynos_update_plane(crtc->primary, crtc, fb, 0, 0, > - crtc_w, crtc_h, crtc->x, crtc->y, > - crtc_w, crtc_h); > + crtc_w, crtc_h, crtc->x << 16, crtc->y << 16, > + crtc_w << 16, crtc_h << 16); Assuming we are pushing the atomic patches soon we don't need the change on this patch. I've asked about the atomic modesetting patches in the other thread. Gustavo
Hi Gustavo, On 04/25/2015 03:15 AM, Gustavo Padovan wrote: > Hi Joonyoung, > > 2015-04-16 Joonyoung Shim <jy0922.shim@samsung.com>: > >> The exynos_update_plane function needs 16.16 fixed point source data. >> >> Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> >> --- >> drivers/gpu/drm/exynos/exynos_drm_crtc.c | 7 ++++--- >> 1 file changed, 4 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c >> index eb49195..f0bdaca 100644 >> --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c >> +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c >> @@ -127,7 +127,8 @@ static int exynos_drm_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, >> crtc_h = fb->height - y; >> >> return exynos_update_plane(crtc->primary, crtc, fb, 0, 0, >> - crtc_w, crtc_h, x, y, crtc_w, crtc_h); >> + crtc_w, crtc_h, x << 16, y << 16, >> + crtc_w << 16, crtc_h << 16); >> } >> >> static void exynos_drm_crtc_disable(struct drm_crtc *crtc) >> @@ -202,8 +203,8 @@ static int exynos_drm_crtc_page_flip(struct drm_crtc *crtc, >> crtc_w = fb->width - crtc->x; >> crtc_h = fb->height - crtc->y; >> ret = exynos_update_plane(crtc->primary, crtc, fb, 0, 0, >> - crtc_w, crtc_h, crtc->x, crtc->y, >> - crtc_w, crtc_h); >> + crtc_w, crtc_h, crtc->x << 16, crtc->y << 16, >> + crtc_w << 16, crtc_h << 16); > > Assuming we are pushing the atomic patches soon we don't need the change > on this patch. I've asked about the atomic modesetting patches in the > other thread. > Yeah, but this fixed patch needs until merged your atomic patches, if not, i cannot output updated screen from primary plane on current exynos drm driver. Thanks.
diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c index eb49195..f0bdaca 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c @@ -127,7 +127,8 @@ static int exynos_drm_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y, crtc_h = fb->height - y; return exynos_update_plane(crtc->primary, crtc, fb, 0, 0, - crtc_w, crtc_h, x, y, crtc_w, crtc_h); + crtc_w, crtc_h, x << 16, y << 16, + crtc_w << 16, crtc_h << 16); } static void exynos_drm_crtc_disable(struct drm_crtc *crtc) @@ -202,8 +203,8 @@ static int exynos_drm_crtc_page_flip(struct drm_crtc *crtc, crtc_w = fb->width - crtc->x; crtc_h = fb->height - crtc->y; ret = exynos_update_plane(crtc->primary, crtc, fb, 0, 0, - crtc_w, crtc_h, crtc->x, crtc->y, - crtc_w, crtc_h); + crtc_w, crtc_h, crtc->x << 16, crtc->y << 16, + crtc_w << 16, crtc_h << 16); if (ret) { crtc->primary->fb = old_fb; spin_lock_irq(&dev->event_lock);
The exynos_update_plane function needs 16.16 fixed point source data. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> --- drivers/gpu/drm/exynos/exynos_drm_crtc.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)