Bug 2604 - color tiling does not work correctly with XRandR
Summary: color tiling does not work correctly with XRandR
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: high normal
Assignee: Xorg Project Team
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-02-23 14:43 UTC by Roland Scheidegger
Modified: 2005-07-03 23:49 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Roland Scheidegger 2005-02-23 14:43:19 UTC
XRandR causes errors with color tiling. This can most easily be seen when
pageflip is enabled and a fullscreen app (for instance torcs) uses XRandR (not
vidmode like most apps do) to change the resolution (heavy flickering can be
seen, one of the two buffers is wrong).
I'll try to investigate this, though I need to figure out first how XRandR
actually works...
Comment 1 Alex Deucher 2005-02-25 08:57:38 UTC
I think xrandr just indirectly calls switchmode() and clamps the viewport.
Comment 2 Roland Scheidegger 2005-02-25 19:19:48 UTC
Apparently, what happens (at least with torcs) is that when RADEONDoAdjustFrame
is called when XRandr causes the resolution switch, info->have3DWindows is 0 and
thus the workaround to fix the horrible flickering when scrolling in a virtual
screen gets applied (i.e. the RADEON_CRTC_OFFSET_FLIP_CNTL bit gets unset). I
don't know why info->have3DWindows is 0 but the drm apparently thinks the 3d
client is already active (otherwise it would reinit the flip_cntl bit). But the
workaround is ugly anyway and should be replaced with a proper solution.
However, I got somewhat stuck with properly implementing that before, it's not
so easy.
Comment 3 Roland Scheidegger 2005-07-04 16:49:46 UTC
fixed, at the cost of getting the flickering back when scrolling vertically in a
virtual screen (if both color tiling and page flip are enabled). IMHO the
workaround causes more harm than good, especially since it's unclear why exactly
it fails (might not be related to xrandr at all). And the workaround didn't do
anything when some 3d window was active anyway.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.