summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r600
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers/dri/r600')
-rw-r--r--src/mesa/drivers/dri/r600/r700_chip.c73
-rw-r--r--src/mesa/drivers/dri/r600/r700_chip.h4
-rw-r--r--src/mesa/drivers/dri/r600/r700_ioctl.c4
-rw-r--r--src/mesa/drivers/dri/r600/r700_render.c2
4 files changed, 21 insertions, 62 deletions
diff --git a/src/mesa/drivers/dri/r600/r700_chip.c b/src/mesa/drivers/dri/r600/r700_chip.c
index 5cd0d72d6e..3db03578ed 100644
--- a/src/mesa/drivers/dri/r600/r700_chip.c
+++ b/src/mesa/drivers/dri/r600/r700_chip.c
@@ -53,16 +53,6 @@ static GLboolean r700DestroyChipObj(GLcontext * ctx)
r700 = (R700_CHIP_CONTEXT *)(context->chipobj.pvChipObj);
- if(0 != r700->pbo_vs_clear)
- {
- r600DeleteShader(context, r700->pbo_vs_clear);
- }
-
- if(0 != r700->pbo_fs_clear)
- {
- r600DeleteShader(context, r700->pbo_fs_clear);
- }
-
FREE(r700->pStateList);
FREE(r700);
@@ -512,8 +502,7 @@ inline GLboolean needRelocReg(context_t *context, unsigned int reg)
return GL_FALSE;
}
-inline GLboolean setRelocReg(context_t *context, unsigned int reg,
- GLboolean bUseStockShader)
+inline GLboolean setRelocReg(context_t *context, unsigned int reg)
{
BATCH_LOCALS(&context->radeon);
R700_CHIP_CONTEXT *r700 = R700_CONTEXT_STATES(context);
@@ -573,63 +562,35 @@ inline GLboolean setRelocReg(context_t *context, unsigned int reg,
return GL_TRUE;
}
break;
- case mmSQ_PGM_START_VS:
- {
- if(GL_TRUE == bUseStockShader)
- {
- if(NULL != r700->pbo_vs_clear)
- {
- pbo = (struct radeon_bo *)(r700->pbo_vs_clear);
- }
- else
- {
- return GL_FALSE;
- }
- }
- else
- {
- pbo = (struct radeon_bo *)r700GetActiveVpShaderBo(GL_CONTEXT(context));
- }
+ case mmSQ_PGM_START_VS:
+ {
+ pbo = (struct radeon_bo *)r700GetActiveVpShaderBo(GL_CONTEXT(context));
offset_mod.shift = NO_SHIFT;
offset_mod.shiftbits = 0;
- offset_mod.mask = 0xFFFFFFFF;
+ offset_mod.mask = 0xFFFFFFFF;
- R600_OUT_BATCH_RELOC(r700->SQ_PGM_START_VS.u32All,
- pbo,
+ R600_OUT_BATCH_RELOC(r700->SQ_PGM_START_VS.u32All,
+ pbo,
r700->SQ_PGM_START_VS.u32All,
RADEON_GEM_DOMAIN_GTT, 0, 0, &offset_mod);
return GL_TRUE;
}
break;
- case mmSQ_PGM_START_FS:
- case mmSQ_PGM_START_ES:
- case mmSQ_PGM_START_GS:
- case mmSQ_PGM_START_PS:
+ case mmSQ_PGM_START_FS:
+ case mmSQ_PGM_START_ES:
+ case mmSQ_PGM_START_GS:
+ case mmSQ_PGM_START_PS:
{
- if(GL_TRUE == bUseStockShader)
- {
- if(NULL != r700->pbo_fs_clear)
- {
- pbo = (struct radeon_bo *)(r700->pbo_fs_clear);
- }
- else
- {
- return GL_FALSE;
- }
- }
- else
- {
- pbo = (struct radeon_bo *)r700GetActiveFpShaderBo(GL_CONTEXT(context));
- }
+ pbo = (struct radeon_bo *)r700GetActiveFpShaderBo(GL_CONTEXT(context));
offset_mod.shift = NO_SHIFT;
offset_mod.shiftbits = 0;
offset_mod.mask = 0xFFFFFFFF;
voffset = 0;
- R600_OUT_BATCH_RELOC(r700->SQ_PGM_START_PS.u32All,
- pbo,
+ R600_OUT_BATCH_RELOC(r700->SQ_PGM_START_PS.u32All,
+ pbo,
r700->SQ_PGM_START_PS.u32All,
RADEON_GEM_DOMAIN_GTT, 0, 0, &offset_mod);
return GL_TRUE;
@@ -640,7 +601,7 @@ inline GLboolean setRelocReg(context_t *context, unsigned int reg,
return GL_FALSE;
}
-GLboolean r700SendContextStates(context_t *context, GLboolean bUseStockShader)
+GLboolean r700SendContextStates(context_t *context)
{
BATCH_LOCALS(&context->radeon);
@@ -676,11 +637,11 @@ GLboolean r700SendContextStates(context_t *context, GLboolean bUseStockShader)
pState = pState->pNext;
- BEGIN_BATCH_NO_AUTOSTATE(toSend + 2);
+ BEGIN_BATCH_NO_AUTOSTATE(toSend + 2);
R600_OUT_BATCH_REGSEQ(((pInit->unOffset + ASIC_CONTEXT_BASE_INDEX)<<2), toSend);
for(ui=0; ui<toSend; ui++)
{
- if( GL_FALSE == setRelocReg(context, pInit->unOffset, bUseStockShader) )
+ if( GL_FALSE == setRelocReg(context, pInit->unOffset) )
{
/* for not reloc reg. */
R600_OUT_BATCH(*(pInit->puiValue));
diff --git a/src/mesa/drivers/dri/r600/r700_chip.h b/src/mesa/drivers/dri/r600/r700_chip.h
index c8d9cbfbda..88b5075479 100644
--- a/src/mesa/drivers/dri/r600/r700_chip.h
+++ b/src/mesa/drivers/dri/r600/r700_chip.h
@@ -447,8 +447,6 @@ typedef struct _R700_CHIP_CONTEXT
R700_TEXTURE_STATES texture_states;
- void * pbo_vs_clear;
- void * pbo_fs_clear;
GLboolean bEnablePerspective;
} R700_CHIP_CONTEXT;
@@ -456,7 +454,7 @@ typedef struct _R700_CHIP_CONTEXT
#define R700_CONTEXT_STATES(context) ((R700_CHIP_CONTEXT *)(context->chipobj.pvChipObj))
extern GLboolean r700InitChipObject(context_t *context);
-extern GLboolean r700SendContextStates(context_t *context, GLboolean bUseStockShader);
+extern GLboolean r700SendContextStates(context_t *context);
extern int r700SetupStreams(GLcontext * ctx);
extern void r700SetupVTXConstants(GLcontext * ctx,
unsigned int nStreamID,
diff --git a/src/mesa/drivers/dri/r600/r700_ioctl.c b/src/mesa/drivers/dri/r600/r700_ioctl.c
index 1ab3ee7de5..f8c3359a47 100644
--- a/src/mesa/drivers/dri/r600/r700_ioctl.c
+++ b/src/mesa/drivers/dri/r600/r700_ioctl.c
@@ -60,8 +60,8 @@ static void r700Flush(GLcontext *ctx)
if (radeon->dma.flush)
radeon->dma.flush( ctx );
- r700SendContextStates(context, GL_FALSE);
-
+ r700SendContextStates(context);
+
if (radeon->cmdbuf.cs->cdw)
rcommonFlushCmdBuf(radeon, __FUNCTION__);
}
diff --git a/src/mesa/drivers/dri/r600/r700_render.c b/src/mesa/drivers/dri/r600/r700_render.c
index 78b92d695e..1f0604da5d 100644
--- a/src/mesa/drivers/dri/r600/r700_render.c
+++ b/src/mesa/drivers/dri/r600/r700_render.c
@@ -294,7 +294,7 @@ static GLboolean r700RunRender(GLcontext * ctx,
/* flush vtx */
//r700SyncSurf(context); /* */
- r700SendContextStates(context, GL_FALSE);
+ r700SendContextStates(context);
/* richard test code */
for (i = 0; i < vb->PrimitiveCount; i++)