diff options
author | Alex Deucher <alex@botch2.hsd1.va.comcast.net> | 2007-01-30 21:11:09 -0500 |
---|---|---|
committer | Alex Deucher <alex@botch2.hsd1.va.comcast.net> | 2007-01-30 21:11:09 -0500 |
commit | ff8ea19fcdce099732f9359e53cd62b9a04bfa6d (patch) | |
tree | 0d79b670e5325920ab8f1c3c9d09b1ff50f8ae0b | |
parent | 2fb84dd2fc1a663c7b9d77e706189439ffe08381 (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.
-rw-r--r-- | man/radeon.man | 8 | ||||
-rw-r--r-- | src/radeon.h | 3 | ||||
-rw-r--r-- | src/radeon_driver.c | 14 |
3 files changed, 20 insertions, 5 deletions
diff --git a/man/radeon.man b/man/radeon.man index eb775ed1..db090d5b 100644 --- a/man/radeon.man +++ b/man/radeon.man @@ -26,7 +26,7 @@ driver supports PCI and AGP video cards based on the following ATI chips Radeon 7200 .TP 12 .B RV100 -Radeon 7000(VE), M6 +Radeon 7000(VE), M6, RN50/ES1000 .TP 12 .B RS100 Radeon IGP320(M) @@ -625,6 +625,12 @@ case. This is only useful for LVDS panels (laptop internal panels). The default is .B on. .TP +.BI "Option \*qRN50Force3D\*q \*q" boolean \*q +Enable DRI support for RN50/ES1000 chips. The 3D engine on these chips has +not been validated at the hardware level and is not likely to work in most +cases. If it does, you got lucky. The default is +.B off. +.TP .SH SEE ALSO __xservername__(__appmansuffix__), __xconfigfile__(__filemansuffix__), xorgconfig(__appmansuffix__), Xserver(__appmansuffix__), X(__miscmansuffix__) 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 || |