[Nouveau] [PATCH] present: rotated crtc's work fine

Ilia Mirkin imirkin at alum.mit.edu
Wed Jan 23 05:48:50 UTC 2019


The "pick best" logic takes rotation into account. However flipping a
rotated CRTC can't work, so we disable that.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
---

At first blush, this seems to make DRI3 function reasonably with rotated
CRTCs

 src/nouveau_present.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/src/nouveau_present.c b/src/nouveau_present.c
index ebd5fcf..936475e 100644
--- a/src/nouveau_present.c
+++ b/src/nouveau_present.c
@@ -46,9 +46,6 @@ nouveau_present_crtc(WindowPtr window)
 	if (!crtc)
 		return NULL;
 
-	if (crtc->rotatedData)
-		return NULL;
-
 	return crtc->randr_crtc;
 }
 
@@ -152,7 +149,7 @@ nouveau_present_flip_check(RRCrtcPtr rrcrtc, WindowPtr window,
 	ScrnInfoPtr scrn = xf86ScreenToScrn(window->drawable.pScreen);
 	xf86CrtcPtr crtc = rrcrtc->devPrivate;
 
-	if (!scrn->vtSema || !drmmode_crtc_on(crtc))
+	if (!scrn->vtSema || !drmmode_crtc_on(crtc) || crtc->rotatedData)
 		return FALSE;
 
 	return TRUE;
-- 
2.19.2



More information about the Nouveau mailing list