xf86-video-ati: Branch 'master'
Alex Deucher
agd5f at kemper.freedesktop.org
Sun Apr 27 18:08:50 PDT 2008
src/radeon_commonfuncs.c | 8 ++++----
src/radeon_exa_render.c | 8 ++++++--
2 files changed, 10 insertions(+), 6 deletions(-)
New commits:
commit 211e0041c7fc2df494b77428553943a2b526ee4e
Author: Alex Deucher <alex at cube.(none)>
Date: Sun Apr 27 21:08:00 2008 -0400
IGP: fix EXA composite corruption
diff --git a/src/radeon_commonfuncs.c b/src/radeon_commonfuncs.c
index e8ddff8..e504979 100644
--- a/src/radeon_commonfuncs.c
+++ b/src/radeon_commonfuncs.c
@@ -167,15 +167,15 @@ static void FUNC_NAME(RADEONInit3DEngine)(ScrnInfoPtr pScrn)
if (info->has_tcl)
BEGIN_ACCEL(15);
else
- BEGIN_ACCEL(8);
+ BEGIN_ACCEL(9);
OUT_ACCEL_REG(R300_VAP_VTX_STATE_CNTL, 0);
OUT_ACCEL_REG(R300_VAP_PVS_STATE_FLUSH_REG, 0);
- if (info->has_tcl) {
+ if (info->has_tcl)
OUT_ACCEL_REG(R300_VAP_CNTL_STATUS, 0);
- OUT_ACCEL_REG(R300_VAP_CNTL, vap_cntl);
- }else
+ else
OUT_ACCEL_REG(R300_VAP_CNTL_STATUS, R300_PVS_BYPASS);
+ OUT_ACCEL_REG(R300_VAP_CNTL, vap_cntl);
OUT_ACCEL_REG(R300_VAP_PVS_STATE_FLUSH_REG, 0);
OUT_ACCEL_REG(R300_VAP_VTE_CNTL, R300_VTX_XY_FMT | R300_VTX_Z_FMT);
OUT_ACCEL_REG(R300_VAP_PSC_SGN_NORM_CNTL, 0);
diff --git a/src/radeon_exa_render.c b/src/radeon_exa_render.c
index 138216f..ec3c06d 100644
--- a/src/radeon_exa_render.c
+++ b/src/radeon_exa_render.c
@@ -2108,8 +2108,12 @@ static void FUNC_NAME(RadeonDoneComposite)(PixmapPtr pDst)
ENTER_DRAW(0);
- if (IS_R500_3D) {
- /* r500 shows corruption on small things like glyphs without a 3D idle */
+ if (IS_R500_3D || ((info->ChipFamily == CHIP_FAMILY_RS400) ||
+ (info->ChipFamily == CHIP_FAMILY_RS690) ||
+ (info->ChipFamily == CHIP_FAMILY_RS740))) {
+ /* r500 shows corruption on small things like glyphs without a 3D idle
+ * IGP shows more substantial corruption
+ */
BEGIN_ACCEL(1);
OUT_ACCEL_REG(RADEON_WAIT_UNTIL, RADEON_WAIT_3D_IDLECLEAN);
FINISH_ACCEL();
More information about the xorg-commit
mailing list