summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2018-02-14 19:06:33 +0100
committerMichel Dänzer <michel@daenzer.net>2018-02-15 17:17:52 +0100
commit37c7260bdef3a53b0f0295a531f33938e9aad8cf (patch)
treee71b1084de51d3cd073f5a6ab639e233a0b4b8c0
parent63b0c73a99fdf0eb7550a88df3a0052ce784e758 (diff)
If glamor is too old for depth 30, fall back to ShadowFB
Instead of not starting up at all. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--src/amdgpu_kms.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/amdgpu_kms.c b/src/amdgpu_kms.c
index 15adb29..e1aae99 100644
--- a/src/amdgpu_kms.c
+++ b/src/amdgpu_kms.c
@@ -1083,14 +1083,7 @@ static Bool AMDGPUPreInitVisual(ScrnInfoPtr pScrn)
case 15:
case 16:
case 24:
- break;
-
case 30:
- if (xorgGetVersion() < XORG_VERSION_NUMERIC(1,19,99,1,0)) {
- xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
- "Depth 30 requires Xorg >= 1.19.99.1\n");
- return FALSE;
- }
break;
default:
@@ -1173,6 +1166,14 @@ static Bool AMDGPUPreInitAccel_KMS(ScrnInfoPtr pScrn)
use_glamor = FALSE;
#endif
+ if (pScrn->depth == 30 && use_glamor &&
+ xorgGetVersion() < XORG_VERSION_NUMERIC(1,19,99,1,0)) {
+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+ "Depth 30 is not supported by GLAMOR with "
+ "Xorg < 1.19.99.1\n");
+ goto shadowfb;
+ }
+
#ifdef DRI2
info->dri2.available = ! !xf86LoadSubModule(pScrn, "dri2");
#endif
@@ -1190,6 +1191,7 @@ static Bool AMDGPUPreInitAccel_KMS(ScrnInfoPtr pScrn)
"ShadowFB\n");
}
} else {
+shadowfb:
xf86DrvMsg(pScrn->scrnIndex, X_CONFIG,
"GPU acceleration disabled, using ShadowFB\n");
}