diff options
-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 || |