summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlex Deucher <alex@botch2.hsd1.va.comcast.net>2007-01-30 21:11:09 -0500
committerAlex Deucher <alex@botch2.hsd1.va.comcast.net>2007-01-30 21:11:09 -0500
commitff8ea19fcdce099732f9359e53cd62b9a04bfa6d (patch)
tree0d79b670e5325920ab8f1c3c9d09b1ff50f8ae0b /src
parent2fb84dd2fc1a663c7b9d77e706189439ffe08381 (diff)
add option to force the DRI on for RN50 chips
Allow user to force the DRI on for RN50 chips. 3D is not guaranteed to work on these chips, however in some cases it does. fixes bug 9802.
Diffstat (limited to 'src')
-rw-r--r--src/radeon.h3
-rw-r--r--src/radeon_driver.c14
2 files changed, 13 insertions, 4 deletions
diff --git a/src/radeon.h b/src/radeon.h
index 1f44163f..0f5dae06 100644
--- a/src/radeon.h
+++ b/src/radeon.h
@@ -156,7 +156,8 @@ typedef enum {
OPTION_LVDS_PROBE_PLL,
OPTION_ACCELMETHOD,
OPTION_CONSTANTDPI,
- OPTION_REVERSE_DISPLAY
+ OPTION_REVERSE_DISPLAY,
+ OPTION_RN50_3D
} RADEONOpts;
/* ------- mergedfb support ------------- */
diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index cd5a8073..1d217aef 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -198,6 +198,7 @@ static const OptionInfoRec RADEONOptions[] = {
{ OPTION_ACCELMETHOD, "AccelMethod", OPTV_STRING, {0}, FALSE },
{ OPTION_CONSTANTDPI, "ConstantDPI", OPTV_BOOLEAN, {0}, FALSE },
{ OPTION_REVERSE_DISPLAY,"ReverseDisplay", OPTV_BOOLEAN, {0}, FALSE },
+ { OPTION_RN50_3D, "RN50Force3D", OPTV_BOOLEAN, {0}, FALSE },
{ -1, NULL, OPTV_NONE, {0}, FALSE }
};
@@ -2511,9 +2512,16 @@ static Bool RADEONPreInitDRI(ScrnInfoPtr pScrn)
if (info->Chipset == PCI_CHIP_RN50_515E ||
info->Chipset == PCI_CHIP_RN50_5969) {
- xf86DrvMsg(pScrn->scrnIndex, X_INFO,
- "Direct rendering not supported on RN50\n");
- return FALSE;
+ if (xf86ReturnOptValBool(info->Options, OPTION_RN50_3D, FALSE)) {
+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
+ "Direct rendering for RN50 forced on -- "
+ "This is NOT officially supported at the hardware level "
+ "and may cause instability or lockups\n");
+ } else {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Direct rendering not officially supported on RN50\n");
+ return FALSE;
+ }
}
if (info->Chipset == PCI_CHIP_RS400_5A41 ||