[platforms/fbdev] Use a better way to correct activating framebuffer devices

Summary:
My change in 304528e80b has been reported to
cause issues for PostMarketOS https://gitlab.com/postmarketOS/pmaports/issues/204
I originally submitted the change to activate Framebuffer devices
as secondary framebuffer devices are not on by default, (such as a
secondary DisplayLink device). Changing attributes usually forced
some framebuffer devices to turn on, however I have found a more
accurate way to turn on framebuffer devices, without messing with
the color layout.

Reviewers: #kwin, davidedmundson, graesslin, zzag

Reviewed By: #kwin, zzag

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D19663
This commit is contained in:
Nerdopolis Turfwalker 2019-03-13 10:49:04 +02:00 committed by Vlad Zagorodniy
parent f740aa2e4b
commit 93b7eea67d

View file

@ -126,20 +126,8 @@ bool FramebufferBackend::handleScreenInfo()
return false;
}
// correct the color info, and try to turn on screens, assuming this is a non-primary framebuffer device
varinfo.grayscale = 0;
varinfo.transp.offset = 24;
varinfo.transp.length = 8;
varinfo.transp.msb_right = 0;
varinfo.red.offset = 16;
varinfo.red.length = 8;
varinfo.red.msb_right = 0;
varinfo.green.offset = 8;
varinfo.green.length = 8;
varinfo.green.msb_right = 0;
varinfo.blue.offset = 0;
varinfo.blue.length = 8;
varinfo.blue.msb_right = 0;
// Activate the framebuffer device, assuming this is a non-primary framebuffer device
varinfo.activate = FB_ACTIVATE_NOW | FB_ACTIVATE_FORCE;
ioctl(m_fd, FBIOPUT_VSCREENINFO, &varinfo);
// Probe the device for new screen information.