summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2011-12-19 17:36:36 -0500
committerAdam Jackson <ajax@redhat.com>2011-12-19 17:36:36 -0500
commit2f87fa6ddebacb03bbd3a8ca3177ce16912d0f2c (patch)
treeac0fd5ce21a2f83156776aec18398b51ca5efb58
parent6afbfaf62a2d049fcf289b1dbf32018fd7fdea1c (diff)
Fall back to shadowfb if XAA is unavailable
Signed-off-by: Adam Jackson <ajax@redhat.com>
-rw-r--r--src/trident_driver.c26
1 files changed, 12 insertions, 14 deletions
diff --git a/src/trident_driver.c b/src/trident_driver.c
index 472c9b7..3088eb2 100644
--- a/src/trident_driver.c
+++ b/src/trident_driver.c
@@ -2370,24 +2370,14 @@ TRIDENTPreInit(ScrnInfoPtr pScrn, int flags)
return FALSE;
}
- /* Load shadow if needed */
- if (pTrident->ShadowFB) {
- if (!xf86LoadSubModule(pScrn, "shadow")) {
- TRIDENTFreeRec(pScrn);
- return FALSE;
- }
- }
-
/* Load XAA if needed */
if (!pTrident->NoAccel) {
if (!pTrident->useEXA) {
if (!xf86LoadSubModule(pScrn, "xaa")) {
- if (IsPciCard && UseMMIO) {
- TRIDENTDisableMMIO(pScrn);
- TRIDENTUnmapMem(pScrn);
- }
- TRIDENTFreeRec(pScrn);
- return FALSE;
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Falling back to shadowfb\n");
+ pTrident->NoAccel = 1;
+ pTrident->ShadowFB = 1;
}
}
@@ -2428,6 +2418,14 @@ TRIDENTPreInit(ScrnInfoPtr pScrn, int flags)
}
}
+ /* Load shadow if needed */
+ if (pTrident->ShadowFB) {
+ if (!xf86LoadSubModule(pScrn, "shadow")) {
+ TRIDENTFreeRec(pScrn);
+ return FALSE;
+ }
+ }
+
/* Load DDC if needed */
/* This gives us DDC1 - we should be able to get DDC2B using i2c */