On 05/11/2015 05:55 AM, Michel Dänzer wrote:

[ Adding the xorg-driver-ati mailing list, please post DDX driver
patches there ]

On 09.05.2015 14:24, Mario Kleiner wrote:
Commit 5921ba4ca705a0d919515626088f3948cc4848c1
"Don't flip between BOs with different tiling parameters"
breaks page flipping completely, even on a simple non-prime
configuration, at least on the tested Radeon HD 4670, due to
incompatible tiling flags between pixmap and screen pixmap.

This is just a hack which fixes pageflipping on that gpu,
not intended for merging, just to illustrate that something
is missing here.

Signed-off-by: Mario Kleiner <[email protected]>
---
  src/radeon_present.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/radeon_present.c b/src/radeon_present.c
index 53819e0..53634ad 100644
--- a/src/radeon_present.c
+++ b/src/radeon_present.c
@@ -257,11 +257,12 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr 
window, PixmapPtr pixmap,
      /* The kernel driver doesn't handle flipping between BOs with different
       * tiling parameters correctly yet
       */
+/*
      screen_pixmap = screen->GetScreenPixmap(screen);
      if (radeon_present_get_pixmap_tiling_flags(info, pixmap) !=
        radeon_present_get_pixmap_tiling_flags(info, screen_pixmap))
        return FALSE;
-
+*/
      if (crtc) {
        drmmode_crtc_private_ptr drmmode_crtc = get_drmmode_crtc(scrn, crtc);



We probably need to ignore more bits in
radeon_present_get_pixmap_tiling_flags(). What does it currently return
for each pixmap for you in the failing case?


Patches 1 and 2 look good, I'm planning to push them soon, thanks!



It will probably take a couple of days before i get access to that machine again. I'll let you know then.

-mario

_______________________________________________
xorg-driver-ati mailing list
[email protected]
http://lists.x.org/mailman/listinfo/xorg-driver-ati

Reply via email to