diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2012-06-06 12:16:08 +0200 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2012-06-06 12:16:08 +0200 |
commit | 1d9f1eb7e65c57c52759ccbfa51e8bdd5a10acac (patch) | |
tree | c33bb9ec3ce42b2673ce873c15cfd43d83b5e3aa /src/radeon_video.c | |
parent | 4603285aa8efaf2614f15a38254465cec2075f11 (diff) |
Don't wait on a CRTC which has been disabled via DPMS (bug #49761).
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=49761 .
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Diffstat (limited to 'src/radeon_video.c')
-rw-r--r-- | src/radeon_video.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/radeon_video.c b/src/radeon_video.c index 4eb01dc1..d6027358 100644 --- a/src/radeon_video.c +++ b/src/radeon_video.c @@ -19,6 +19,14 @@ #include "atipciids.h" #include "xf86fbman.h" +/* DPMS */ +#ifdef HAVE_XEXTPROTO_71 +#include <X11/extensions/dpmsconst.h> +#else +#define DPMS_SERVER +#include <X11/extensions/dpms.h> +#endif + #include <X11/extensions/Xv.h> #include "fourcc.h" @@ -160,6 +168,11 @@ radeon_pick_best_crtc(ScrnInfoPtr pScrn, for (c = 0; c < xf86_config->num_crtc; c++) { xf86CrtcPtr crtc = xf86_config->crtc[c]; + drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private; + + if (drmmode_crtc->dpms_mode == DPMSModeOff) + continue; + radeon_crtc_box(crtc, &crtc_box); radeon_box_intersect(&cover_box, &crtc_box, &box); coverage = radeon_box_area(&cover_box); |