summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2013-12-28 21:36:13 -0800
committerEric Anholt <eric@anholt.net>2014-08-21 15:27:49 -0700
commitff61f74937f27eafccaef9c818a3b13ff35a937a (patch)
treed9c9c86c60db77e076fdfcb3331b2864fe74381b
parent24d0de1030e5fcd6b88b9cee677c7500d8e2ff94 (diff)
Disable shadowfb when doing glamor.
-rw-r--r--src/driver.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/src/driver.c b/src/driver.c
index 4345c9e..597214d 100644
--- a/src/driver.c
+++ b/src/driver.c
@@ -769,11 +769,6 @@ PreInit(ScrnInfoPtr pScrn, int flags)
ms->drmmode.sw_cursor = TRUE;
}
- ret = drmGetCap(ms->fd, DRM_CAP_DUMB_PREFER_SHADOW, &value);
- if (!ret) {
- prefer_shadow = !!value;
- }
-
ms->cursor_width = 64;
ms->cursor_height = 64;
ret = drmGetCap(ms->fd, DRM_CAP_CURSOR_WIDTH, &value);
@@ -785,9 +780,22 @@ PreInit(ScrnInfoPtr pScrn, int flags)
ms->cursor_height = value;
}
- ms->drmmode.shadow_enable = xf86ReturnOptValBool(ms->Options, OPTION_SHADOW_FB, prefer_shadow);
+ if (!ms->glamor) {
+ ret = drmGetCap(ms->fd, DRM_CAP_DUMB_PREFER_SHADOW, &value);
+ if (!ret) {
+ prefer_shadow = !!value;
+ }
+
+ ms->drmmode.shadow_enable = xf86ReturnOptValBool(ms->Options,
+ OPTION_SHADOW_FB,
+ prefer_shadow);
+
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "ShadowFB: preferred %s, enabled %s\n",
+ prefer_shadow ? "YES" : "NO",
+ ms->drmmode.shadow_enable ? "YES" : "NO");
+ }
- xf86DrvMsg(pScrn->scrnIndex, X_INFO, "ShadowFB: preferred %s, enabled %s\n", prefer_shadow ? "YES" : "NO", ms->drmmode.shadow_enable ? "YES" : "NO");
if (drmmode_pre_init(pScrn, &ms->drmmode, pScrn->bitsPerPixel / 8) == FALSE) {
xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "KMS setup failed\n");
goto fail;