diff options
author | Alex Deucher <alex@botch2.com> | 2008-04-10 16:58:22 -0400 |
---|---|---|
committer | Alex Deucher <alex@botch2.com> | 2008-04-10 16:58:22 -0400 |
commit | 4b9234e1c4f7c7f419cb4245d64f3f9756c98bb6 (patch) | |
tree | 5f992f2fa6815f00c7117e4ac81b39c480829d31 | |
parent | 865c463e3afb4759758f569132be8bf1386da5cc (diff) |
R3xx+: tcl wip
-rw-r--r-- | src/radeon_exa_render.c | 27 | ||||
-rw-r--r-- | src/radeon_textured_videofuncs.c | 4 |
2 files changed, 14 insertions, 17 deletions
diff --git a/src/radeon_exa_render.c b/src/radeon_exa_render.c index c7ee62c6..1158f89d 100644 --- a/src/radeon_exa_render.c +++ b/src/radeon_exa_render.c @@ -1051,10 +1051,10 @@ static Bool FUNC_NAME(R300PrepareComposite)(int op, PicturePtr pSrcPicture, CARD32 txenable, colorpitch; CARD32 blendcntl; int pixel_shift; - int has_tcl = ((info->ChipFamily != CHIP_FAMILY_RS690) && + /*int has_tcl = ((info->ChipFamily != CHIP_FAMILY_RS690) && (info->ChipFamily != CHIP_FAMILY_RS740) && (info->ChipFamily != CHIP_FAMILY_RS400) && - (info->ChipFamily != CHIP_FAMILY_RV515)); + (info->ChipFamily != CHIP_FAMILY_RV515));*/ ACCEL_PREAMBLE(); TRACE; @@ -1096,27 +1096,24 @@ static Bool FUNC_NAME(R300PrepareComposite)(int op, PicturePtr pSrcPicture, RADEON_SWITCH_TO_3D(); /* setup the VAP */ - if (has_tcl) { + if (info->has_tcl) { BEGIN_ACCEL(9); OUT_ACCEL_REG(R300_VAP_CNTL_STATUS, 0); - OUT_ACCEL_REG(R300_VAP_PVS_STATE_FLUSH_REG, 0); - OUT_ACCEL_REG(R300_VAP_CNTL, ((6 << R300_PVS_NUM_SLOTS_SHIFT) | - (5 << R300_PVS_NUM_CNTLRS_SHIFT) | - (4 << R300_PVS_NUM_FPUS_SHIFT) | - (12 << R300_VF_MAX_VTX_NUM_SHIFT))); + } else { - BEGIN_ACCEL(8); + BEGIN_ACCEL(9); OUT_ACCEL_REG(R300_VAP_CNTL_STATUS, R300_PVS_BYPASS); - OUT_ACCEL_REG(R300_VAP_CNTL, ((10 << R300_PVS_NUM_SLOTS_SHIFT) | - (5 << R300_PVS_NUM_CNTLRS_SHIFT) | - (4 << R300_PVS_NUM_FPUS_SHIFT) | - (5 << R300_VF_MAX_VTX_NUM_SHIFT))); } + OUT_ACCEL_REG(R300_VAP_PVS_STATE_FLUSH_REG, 0); + OUT_ACCEL_REG(R300_VAP_CNTL, ((6 << R300_PVS_NUM_SLOTS_SHIFT) | + (5 << R300_PVS_NUM_CNTLRS_SHIFT) | + (4 << R300_PVS_NUM_FPUS_SHIFT) | + (12 << R300_VF_MAX_VTX_NUM_SHIFT))); 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); - if (has_tcl) { + if (info->has_tcl) { OUT_ACCEL_REG(R300_VAP_PROG_STREAM_CNTL_0, ((R300_DATA_TYPE_FLOAT_2 << R300_DATA_TYPE_0_SHIFT) | (0 << R300_SKIP_DWORDS_0_SHIFT) | @@ -1192,7 +1189,7 @@ static Bool FUNC_NAME(R300PrepareComposite)(int op, PicturePtr pSrcPicture, FINISH_ACCEL(); /* setup the vertex shader */ - if (has_tcl) { + if (info->has_tcl) { if (pMask) { BEGIN_ACCEL(22); /* flush the PVS before updating??? */ diff --git a/src/radeon_textured_videofuncs.c b/src/radeon_textured_videofuncs.c index 9d7da218..dbf85622 100644 --- a/src/radeon_textured_videofuncs.c +++ b/src/radeon_textured_videofuncs.c @@ -199,12 +199,12 @@ FUNC_NAME(RADEONDisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv if (info->has_tcl) { BEGIN_VIDEO(27); OUT_VIDEO_REG(R300_VAP_CNTL_STATUS, 0); - OUT_VIDEO_REG(R300_VAP_PVS_STATE_FLUSH_REG, 0); } else { - BEGIN_VIDEO(9); + BEGIN_VIDEO(10); OUT_VIDEO_REG(R300_VAP_CNTL_STATUS, R300_PVS_BYPASS); } + OUT_VIDEO_REG(R300_VAP_PVS_STATE_FLUSH_REG, 0); OUT_VIDEO_REG(R300_VAP_CNTL, ((6 << R300_PVS_NUM_SLOTS_SHIFT) | (5 << R300_PVS_NUM_CNTLRS_SHIFT) | (4 << R300_PVS_NUM_FPUS_SHIFT) | |