diff options
author | Tormod Volden <bugzi06.fdo.tormod@xoxy.net> | 2007-07-11 21:25:30 -0400 |
---|---|---|
committer | Alex Deucher <alex@botch2.com> | 2007-07-11 21:25:30 -0400 |
commit | b126b204d3465700e8c6a1fcc4770f322c8bb7db (patch) | |
tree | 868a69ddbffdfeb747ca4d37fae9905ec1f7d5ef /src | |
parent | 90692b3a123861ca02100f86b4c80f070fd4196d (diff) |
Add "DRI" option to enable/disable DRI support
fixes bug 10746
Diffstat (limited to 'src')
-rw-r--r-- | src/savage_driver.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/savage_driver.c b/src/savage_driver.c index 1ed7782..98ea08e 100644 --- a/src/savage_driver.c +++ b/src/savage_driver.c @@ -245,6 +245,7 @@ typedef enum { ,OPTION_DMA_MODE ,OPTION_AGP_MODE ,OPTION_AGP_SIZE + ,OPTION_DRI } SavageOpts; @@ -277,6 +278,7 @@ static const OptionInfoRec SavageOptions[] = { OPTION_DMA_MODE, "DmaMode", OPTV_ANYSTR, {0}, FALSE }, { OPTION_AGP_MODE, "AGPMode", OPTV_INTEGER, {0}, FALSE }, { OPTION_AGP_SIZE, "AGPSize", OPTV_INTEGER, {0}, FALSE }, + { OPTION_DRI, "DRI", OPTV_BOOLEAN, {0}, TRUE }, #endif { -1, NULL, OPTV_NONE, {0}, FALSE } }; @@ -3120,8 +3122,12 @@ static Bool SavageScreenInit(int scrnIndex, ScreenPtr pScreen, vgaHWBlankScreen(pScrn, TRUE); #ifdef XF86DRI - if (psav->IsSecondary) { - psav->directRenderingEnabled = FALSE; + if (!xf86ReturnOptValBool(psav->Options, OPTION_DRI, TRUE)) { + psav->directRenderingEnabled = FALSE; + xf86DrvMsg(pScrn->scrnIndex, X_INFO, + "Direct rendering forced off\n"); + } else if (psav->IsSecondary) { + psav->directRenderingEnabled = FALSE; } else if (xf86IsEntityShared(psav->pEnt->index)) { /* Xinerama has sync problem with DRI, disable it for now */ psav->directRenderingEnabled = FALSE; |