xf86-video-amdgpu: Branch 'master'

Michel Dänzer daenzer at kemper.freedesktop.org
Mon Jun 29 02:46:35 PDT 2015


 src/drmmode_display.c |   11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

New commits:
commit b176e63df20b345cb378fe962afd14eed43421d3
Author: Piotr Redlewski <predlewski at gmail.com>
Date:   Sun Jun 28 23:20:22 2015 +0200

    Enable/disable CRTCs in DPMS hook
    
    The CRTC DPMS hook hasn't enabled or disabled hardware CRTCs.
    
    (Based on radeon commit 48e5be1d5a82c1e0ccf6b7d52924c92a630e52a8)
    
    Signed-off-by: Piotr Redlewski <predlewski at gmail.com>
    Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>

diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index c418dfd..0f23296 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -300,7 +300,16 @@ drmmode_do_crtc_dpms(xf86CrtcPtr crtc, int mode)
 static void
 drmmode_crtc_dpms(xf86CrtcPtr crtc, int mode)
 {
-	/* Nothing to do. drmmode_do_crtc_dpms() is called as appropriate */
+	drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private;
+	drmmode_ptr drmmode = drmmode_crtc->drmmode;
+
+	/* Disable unused CRTCs and enable/disable active CRTCs */
+	if (!crtc->enabled || mode != DPMSModeOn)
+		drmModeSetCrtc(drmmode->fd, drmmode_crtc->mode_crtc->crtc_id,
+			       0, 0, 0, NULL, 0, NULL);
+	else
+		crtc->funcs->set_mode_major(crtc, &crtc->mode, crtc->rotation,
+					    crtc->x, crtc->y);
 }
 
 /* TODO: currently this function only clear the front buffer to zero */


More information about the xorg-commit mailing list