[PATCH 05/18] fbdev: initialize yoffset of varinfo

mchalain [marc.chalain@gmail.com] marc.chalain at gmail.com
Fri Jun 21 01:49:22 PDT 2013


From: mchalain <marc.chalain at gmail.com>

 it initializes varinfo.yoffset. varinfo.yoffset has to
 point on the beginning of the video memory.
 The card uses this value to push on the screen a part of
 the video memory when this one is larger than the screen.

---
 weston/src/compositor-fbdev.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/weston/src/compositor-fbdev.c b/weston/src/compositor-fbdev.c
index adfb67a..d2aee9b 100644
--- a/weston/src/compositor-fbdev.c
+++ b/weston/src/compositor-fbdev.c
@@ -368,6 +368,11 @@ fbdev_query_screen_info(struct fbdev_output *output, int fd,
 		return -1;
 	}
 
+	if (varinfo.yoffset != 0) {
+		varinfo.yoffset	= 0;
+		if (ioctl(fd, FBIOPAN_DISPLAY, &varinfo) < 0)
+			return -1;
+	}
 	return 1;
 }
 
@@ -404,6 +409,7 @@ fbdev_set_screen_info(struct fbdev_output *output, int fd,
 	varinfo.blue.length = 8;
 	varinfo.blue.msb_right = 0;
 
+	varinfo.yoffset = 0;
 	/* Set the device's screen information. */
 	if (ioctl(fd, FBIOPUT_VSCREENINFO, &varinfo) < 0) {
 		return -1;
-- 
1.7.9.5



More information about the wayland-devel mailing list