Diffusion KWin 304528e80b93

[platforms/fbdev] Attempt to set the framebuffer color layout on the…

Authored by nerdopolist on Aug 13 2018, 2:17 PM.

Description

[platforms/fbdev] Attempt to set the framebuffer color layout on the framebuffer device

Summary:
Weston does something similar
https://cgit.freedesktop.org/wayland/weston/tree/libweston/compositor-fbdev.c#n315
...and it seems that the non-primary framebuffer devices start completely off. (the screen is off on my Displayport device, and the window for the second vga card in qemu is much smaller than the primary one, and all black for my qemu vm) .

In my testing, sending the ioctl FBIOPUT_VSCREENINFO with a *changed* &varinfo allows it to wake up, and turns on the screen.
doing FBIOGET_VSCREENINFO and then FBIOPUT_VSCREENINFO in my testing does not work.

I think really the values that end up getting changed are varinfo.transp.offset and varinfo.transp.length. at least on the qemu system, but in this patch I am aligning all of them for completeness, because the drivers might do it differently for qemu

Test Plan: This causes the window for /dev/fb1 (remote-viewer, and a qemu vm with two "VGA" (bochsdrm) cards) to resize from the smaller size when specifying it as the --fb-device on seat0, and kwin draws on the device.

Reviewers: KWin, davidedmundson, graesslin

Reviewed By: KWin, graesslin

Subscribers: zzag, davidedmundson, rkflx, graesslin, kwin

Tags: KWin

Differential Revision: https://phabricator.kde.org/D9572

Details

Committed
zzagAug 13 2018, 2:37 PM
Reviewer
KWin
Differential Revision
D9572: [platforms/fbdev] Attempt to set the framebuffer color layout on the framebuffer device
Parents
R108:77966a09f2d2: [effects/sheet] Modernize code
Branches
Unknown
Tags
Unknown