compositor-fbdev: set fb device info upon the first run.
authornerdopolis <bluescreen_avenger@verizon.net>
Fri, 29 Jun 2018 12:17:49 +0000 (08:17 -0400)
committerPekka Paalanen <pekka.paalanen@collabora.co.uk>
Mon, 2 Jul 2018 12:29:38 +0000 (15:29 +0300)
This attempts to wake up secondary framebuffer devices
(/dev/fb1 and up) as usually these devices start powered off, and
the FBIOPUT_VSCREENINFO ioctl turns it on. This was tested on a
qemu system with the options:

-vga none -device VGA,id=video0 -device secondary-vga,id=video1 \
-device secondary-vga,id=video2

Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
libweston/compositor-fbdev.c

index 09a2eb3..74971c3 100644 (file)
@@ -384,6 +384,14 @@ fbdev_frame_buffer_open(const char *fb_dev,
                return -1;
        }
 
+       /* Attempt to wake up the framebuffer device, needed for secondary
+        * framebuffer devices */
+       if (fbdev_set_screen_info(fd, screen_info) < 0) {
+               weston_log("Failed to set mode settings. "
+                          "Attempting to open output anyway.\n");
+       }
+
+
        return fd;
 }