dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/fb: don't call driver set_config if display isn't panned
@ 2011-11-15 18:27 Jesse Barnes
  0 siblings, 0 replies; only message in thread
From: Jesse Barnes @ 2011-11-15 18:27 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 996 bytes --]

This is just a minor optimization to the fb panning code.  In debugging
some other issues, I noticed a lot of no-op calls to the set_config
routine with all the same parameters and tracked down the source to the
fb helper pan routine.

So add an additional check for actual panning relative to the current
crtc config to avoid unnecessary set_config calls.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index f7c6854..4dd81f3 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -739,7 +739,8 @@ int drm_fb_helper_pan_display(struct fb_var_screeninfo *var,
 		modeset->x = var->xoffset;
 		modeset->y = var->yoffset;
 
-		if (modeset->num_connectors) {
+		if (((modeset->x != crtc->x) || (modeset->y != crtc->y)) &&
+		    modeset->num_connectors) {
 			ret = crtc->funcs->set_config(modeset);
 			if (!ret) {
 				info->var.xoffset = var->xoffset;

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2011-11-15 18:26 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-15 18:27 [PATCH] drm/fb: don't call driver set_config if display isn't panned Jesse Barnes

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox