* [PATCH 4/5] drm/fb: small cleanup [not found] <Message-ID: <CAGS+omD-_wkA3eRLi9ki0srRF6rpAOGNeKNOemXOxj6tt76iow@mail.gmail.com> @ 2015-03-07 13:48 ` Rob Clark 0 siblings, 0 replies; 3+ messages in thread From: Rob Clark @ 2015-03-07 13:48 UTC (permalink / raw) To: dri-devel Flip conditional to reduce indentation level of rest of fxn, and use min/max to make the code clearer. v2: surface_width -> surface_height typo Signed-off-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Daniel Kurtz <djkurtz@chromium.org> --- drivers/gpu/drm/drm_fb_helper.c | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c index 1e6a0c7..dca98a4 100644 --- a/drivers/gpu/drm/drm_fb_helper.c +++ b/drivers/gpu/drm/drm_fb_helper.c @@ -1035,22 +1035,24 @@ static int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_helper, for (i = 0; i < fb_helper->crtc_count; i++) { struct drm_display_mode *desired_mode; int x, y; + desired_mode = fb_helper->crtc_info[i].desired_mode; + + if (!desired_mode) + continue; + + crtc_count++; + x = fb_helper->crtc_info[i].x; y = fb_helper->crtc_info[i].y; - if (desired_mode) { - if (gamma_size == 0) - gamma_size = fb_helper->crtc_info[i].mode_set.crtc->gamma_size; - if (desired_mode->hdisplay + x < sizes.fb_width) - sizes.fb_width = desired_mode->hdisplay + x; - if (desired_mode->vdisplay + y < sizes.fb_height) - sizes.fb_height = desired_mode->vdisplay + y; - if (desired_mode->hdisplay + x > sizes.surface_width) - sizes.surface_width = desired_mode->hdisplay + x; - if (desired_mode->vdisplay + y > sizes.surface_height) - sizes.surface_height = desired_mode->vdisplay + y; - crtc_count++; - } + + if (gamma_size == 0) + gamma_size = fb_helper->crtc_info[i].mode_set.crtc->gamma_size; + + sizes.surface_width = max_t(u32, desired_mode->hdisplay + x, sizes.surface_width); + sizes.surface_height = max_t(u32, desired_mode->vdisplay + y, sizes.surface_height); + sizes.fb_width = min_t(u32, desired_mode->hdisplay + x, sizes.fb_width); + sizes.fb_height = min_t(u32, desired_mode->vdisplay + y, sizes.fb_height); } if (crtc_count == 0 || sizes.fb_width == -1 || sizes.fb_height == -1) { -- 2.1.0 _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 0/5] drm/fb: handle tile connectors @ 2015-03-06 21:23 Rob Clark 2015-03-06 21:23 ` [PATCH 4/5] drm/fb: small cleanup Rob Clark 0 siblings, 1 reply; 3+ messages in thread From: Rob Clark @ 2015-03-06 21:23 UTC (permalink / raw) To: dri-devel Fix fb_width/height to properly take account tiles (for ex, DP MST). Also fixes for fb_width/height vs surface_width/height confusion that I noticed in a handful of drivers. Rob Clark (5): drm/cma: use correct fb width/height drm/exynos: use correct fb width/height drm/rockchip: use correct fb width/height drm/fb: small cleanup drm/fb: handle tiled connectors better drivers/gpu/drm/drm_fb_cma_helper.c | 2 +- drivers/gpu/drm/drm_fb_helper.c | 48 +++++++++++++++++++-------- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 5 +-- drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c | 2 +- 4 files changed, 40 insertions(+), 17 deletions(-) -- 2.1.0 _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 4/5] drm/fb: small cleanup 2015-03-06 21:23 [PATCH 0/5] drm/fb: handle tile connectors Rob Clark @ 2015-03-06 21:23 ` Rob Clark 2015-03-07 6:21 ` Daniel Kurtz 0 siblings, 1 reply; 3+ messages in thread From: Rob Clark @ 2015-03-06 21:23 UTC (permalink / raw) To: dri-devel Flip conditional to reduce indentation level of rest of fxn, and use min/max to make the code clearer. Signed-off-by: Rob Clark <robdclark@gmail.com> --- drivers/gpu/drm/drm_fb_helper.c | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c index 1e6a0c7..5ec3849 100644 --- a/drivers/gpu/drm/drm_fb_helper.c +++ b/drivers/gpu/drm/drm_fb_helper.c @@ -1035,22 +1035,24 @@ static int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_helper, for (i = 0; i < fb_helper->crtc_count; i++) { struct drm_display_mode *desired_mode; int x, y; + desired_mode = fb_helper->crtc_info[i].desired_mode; + + if (!desired_mode) + continue; + + crtc_count++; + x = fb_helper->crtc_info[i].x; y = fb_helper->crtc_info[i].y; - if (desired_mode) { - if (gamma_size == 0) - gamma_size = fb_helper->crtc_info[i].mode_set.crtc->gamma_size; - if (desired_mode->hdisplay + x < sizes.fb_width) - sizes.fb_width = desired_mode->hdisplay + x; - if (desired_mode->vdisplay + y < sizes.fb_height) - sizes.fb_height = desired_mode->vdisplay + y; - if (desired_mode->hdisplay + x > sizes.surface_width) - sizes.surface_width = desired_mode->hdisplay + x; - if (desired_mode->vdisplay + y > sizes.surface_height) - sizes.surface_height = desired_mode->vdisplay + y; - crtc_count++; - } + + if (gamma_size == 0) + gamma_size = fb_helper->crtc_info[i].mode_set.crtc->gamma_size; + + sizes.surface_width = max_t(u32, desired_mode->hdisplay + x, sizes.surface_width); + sizes.surface_height = max_t(u32, desired_mode->vdisplay + y, sizes.surface_width); + sizes.fb_width = min_t(u32, desired_mode->hdisplay + x, sizes.fb_width); + sizes.fb_height = min_t(u32, desired_mode->vdisplay + y, sizes.fb_height); } if (crtc_count == 0 || sizes.fb_width == -1 || sizes.fb_height == -1) { -- 2.1.0 _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 4/5] drm/fb: small cleanup 2015-03-06 21:23 ` [PATCH 4/5] drm/fb: small cleanup Rob Clark @ 2015-03-07 6:21 ` Daniel Kurtz 0 siblings, 0 replies; 3+ messages in thread From: Daniel Kurtz @ 2015-03-07 6:21 UTC (permalink / raw) To: Rob Clark; +Cc: dri-devel On Sat, Mar 7, 2015 at 5:23 AM, Rob Clark <robdclark@gmail.com> wrote: > Flip conditional to reduce indentation level of rest of fxn, and use > min/max to make the code clearer. > > Signed-off-by: Rob Clark <robdclark@gmail.com> > --- > drivers/gpu/drm/drm_fb_helper.c | 28 +++++++++++++++------------- > 1 file changed, 15 insertions(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c > index 1e6a0c7..5ec3849 100644 > --- a/drivers/gpu/drm/drm_fb_helper.c > +++ b/drivers/gpu/drm/drm_fb_helper.c > @@ -1035,22 +1035,24 @@ static int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_helper, > for (i = 0; i < fb_helper->crtc_count; i++) { > struct drm_display_mode *desired_mode; > int x, y; > + > desired_mode = fb_helper->crtc_info[i].desired_mode; > + > + if (!desired_mode) > + continue; > + > + crtc_count++; > + > x = fb_helper->crtc_info[i].x; > y = fb_helper->crtc_info[i].y; > - if (desired_mode) { > - if (gamma_size == 0) > - gamma_size = fb_helper->crtc_info[i].mode_set.crtc->gamma_size; > - if (desired_mode->hdisplay + x < sizes.fb_width) > - sizes.fb_width = desired_mode->hdisplay + x; > - if (desired_mode->vdisplay + y < sizes.fb_height) > - sizes.fb_height = desired_mode->vdisplay + y; > - if (desired_mode->hdisplay + x > sizes.surface_width) > - sizes.surface_width = desired_mode->hdisplay + x; > - if (desired_mode->vdisplay + y > sizes.surface_height) > - sizes.surface_height = desired_mode->vdisplay + y; > - crtc_count++; > - } > + > + if (gamma_size == 0) > + gamma_size = fb_helper->crtc_info[i].mode_set.crtc->gamma_size; > + > + sizes.surface_width = max_t(u32, desired_mode->hdisplay + x, sizes.surface_width); > + sizes.surface_height = max_t(u32, desired_mode->vdisplay + y, sizes.surface_width); This should be: sizes.surface_height = max_t(u32, desired_mode->vdisplay + y, sizes.surface_height); Other than that, this one is: Reviewed-by: Daniel Kurtz <djkurtz@chromium.org> > + sizes.fb_width = min_t(u32, desired_mode->hdisplay + x, sizes.fb_width); > + sizes.fb_height = min_t(u32, desired_mode->vdisplay + y, sizes.fb_height); > } > > if (crtc_count == 0 || sizes.fb_width == -1 || sizes.fb_height == -1) { > -- > 2.1.0 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-03-07 13:48 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <Message-ID: <CAGS+omD-_wkA3eRLi9ki0srRF6rpAOGNeKNOemXOxj6tt76iow@mail.gmail.com>
2015-03-07 13:48 ` [PATCH 4/5] drm/fb: small cleanup Rob Clark
2015-03-06 21:23 [PATCH 0/5] drm/fb: handle tile connectors Rob Clark
2015-03-06 21:23 ` [PATCH 4/5] drm/fb: small cleanup Rob Clark
2015-03-07 6:21 ` Daniel Kurtz
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox