summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2011-12-19 16:50:28 -0500
committerAdam Jackson <ajax@redhat.com>2011-12-19 16:50:28 -0500
commit07845a120a674380b6b499961e6c81accfdd6a2e (patch)
tree768c8b863c81db544216e9fbe5eba5e604a33dc1
parentf2a771c6d2a2308245a0d46301e579b50fb2b6bd (diff)
Fall back to shadowfb when XAA is unavailable
Signed-off-by: Adam Jackson <ajax@redhat.com>
-rw-r--r--src/neo_driver.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/src/neo_driver.c b/src/neo_driver.c
index f8bca2c..a034f86 100644
--- a/src/neo_driver.c
+++ b/src/neo_driver.c
@@ -1089,6 +1089,18 @@ NEOPreInit(ScrnInfoPtr pScrn, int flags)
if (nPtr->showcache)
xf86DrvMsg(pScrn->scrnIndex,X_CONFIG,
"Show chache for debugging\n");
+
+ if (!xf86LoadSubModule(pScrn, "xaa")) {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Falling back to shadow\n");
+ nPtr->shadowFB = 1;
+ }
+
+ if (nPtr->shadowFB) {
+ if (!xf86LoadSubModule(pScrn, "shadow")) {
+ RETURN;
+ }
+ }
+
if (nPtr->shadowFB) {
nPtr->noAccel = TRUE;
xf86DrvMsg(pScrn->scrnIndex, X_CONFIG,
@@ -1314,15 +1326,6 @@ NEOPreInit(ScrnInfoPtr pScrn, int flags)
RETURN;
}
- if (!xf86LoadSubModule(pScrn, "xaa"))
- RETURN;
-
- if (nPtr->shadowFB) {
- if (!xf86LoadSubModule(pScrn, "shadow")) {
- RETURN;
- }
- }
-
if (!nPtr->swCursor) {
if (!xf86LoadSubModule(pScrn, "ramdac"))
RETURN;