xf86-video-ati: Branch 'master'

Alex Deucher agd5f at kemper.freedesktop.org
Thu May 8 05:48:10 PDT 2008


 src/radeon_exa_funcs.c |    7 +++++++
 src/radeon_video.c     |    7 +++++++
 2 files changed, 14 insertions(+)

New commits:
commit 18e20bc22a55ecfee9798c01079d7b24d19f0051
Author: Alex Deucher <alex at t41p.hsd1.va.comcast.net>
Date:   Thu May 8 08:45:51 2008 -0400

    RADEON: disable MMIO paths for EXA composite/texvid on IGP/R5xx
    
    The MMIO paths eventually lead to a hang on r5xx/IGP.  I haven't
    been able to find out why yet.

diff --git a/src/radeon_exa_funcs.c b/src/radeon_exa_funcs.c
index 272ffa9..ab890ad 100644
--- a/src/radeon_exa_funcs.c
+++ b/src/radeon_exa_funcs.c
@@ -537,6 +537,9 @@ Bool FUNC_NAME(RADEONDrawInit)(ScreenPtr pScreen)
 		xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Render acceleration "
 			       "unsupported on R600 and newer cards.\n");
 	else if (IS_R300_3D || IS_R500_3D) {
+#ifdef XF86DRI
+	    if ((info->ChipFamily < CHIP_FAMILY_RS400) || (info->directRenderingEnabled)) {
+#endif
 		xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Render acceleration "
 			       "enabled for R300/R400/R500 type cards.\n");
 		info->exa->CheckComposite = R300CheckComposite;
@@ -544,6 +547,10 @@ Bool FUNC_NAME(RADEONDrawInit)(ScreenPtr pScreen)
 		    FUNC_NAME(R300PrepareComposite);
 		info->exa->Composite = FUNC_NAME(RadeonComposite);
 		info->exa->DoneComposite = FUNC_NAME(RadeonDoneComposite);
+#ifdef XF86DRI
+	    } else
+		xf86DrvMsg(pScrn->scrnIndex, X_INFO, "EXA Composite requires CP on R5xx/IGP\n");
+#endif
 	} else if ((info->ChipFamily == CHIP_FAMILY_RV250) || 
 		   (info->ChipFamily == CHIP_FAMILY_RV280) || 
 		   (info->ChipFamily == CHIP_FAMILY_RS300) || 
diff --git a/src/radeon_video.c b/src/radeon_video.c
index 216cd65..1c13dcd 100644
--- a/src/radeon_video.c
+++ b/src/radeon_video.c
@@ -286,12 +286,19 @@ void RADEONInitVideo(ScreenPtr pScreen)
     }
 
     if (info->ChipFamily != CHIP_FAMILY_RV250) {
+#ifdef XF86DRI
+	if ((info->ChipFamily < CHIP_FAMILY_RS400) || (info->directRenderingEnabled)) {
+#endif
 	texturedAdaptor = RADEONSetupImageTexturedVideo(pScreen);
 	if (texturedAdaptor != NULL) {
 	    adaptors[num_adaptors++] = texturedAdaptor;
 	    xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Set up textured video\n");
 	} else
 	    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Failed to set up textured video\n");
+#ifdef XF86DRI
+        } else
+	    xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Textured video requires CP on R5xx/IGP\n");
+#endif
     } else
 	xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Textured video disabled on RV250 due to HW bug\n");
 


More information about the xorg-commit mailing list