diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-07-07 15:40:28 -0400 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2009-07-07 15:40:28 -0400 |
commit | 0396795689dd82be31d22be83307511d223ebcf2 (patch) | |
tree | 3b1bc1c50bc1a8996361a7210f08d0d976248eae /src/mesa/drivers/dri | |
parent | f74d1c26acaacf688545ecc1ddb996a02e991ccb (diff) |
R6xx/R7xx: fix texture reloc emit
Textures don't look right yet, but tex demos run.
Diffstat (limited to 'src/mesa/drivers/dri')
-rw-r--r-- | src/mesa/drivers/dri/r600/r700_render.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/r600/r700_render.c b/src/mesa/drivers/dri/r600/r700_render.c index bcafdfbd27..413c611cb4 100644 --- a/src/mesa/drivers/dri/r600/r700_render.c +++ b/src/mesa/drivers/dri/r600/r700_render.c @@ -145,15 +145,17 @@ GLboolean r700SendTextureState(context_t *context) else bo = t->bo; if (bo) { - BEGIN_BATCH_NO_AUTOSTATE(14); + BEGIN_BATCH_NO_AUTOSTATE(9); R600_OUT_BATCH(CP_PACKET3(R600_IT_SET_RESOURCE, 7)); R600_OUT_BATCH(i * 7); R600_OUT_BATCH(r700->textures[i]->SQ_TEX_RESOURCE0); R600_OUT_BATCH(r700->textures[i]->SQ_TEX_RESOURCE1); + printf("tex base\n"); R600_OUT_BATCH_RELOC(r700->textures[i]->SQ_TEX_RESOURCE2, bo, 0, RADEON_GEM_DOMAIN_GTT|RADEON_GEM_DOMAIN_VRAM, 0, 0, &offset_mod); + printf("tex mipbase\n"); R600_OUT_BATCH_RELOC(r700->textures[i]->SQ_TEX_RESOURCE3, bo, 0, @@ -161,7 +163,9 @@ GLboolean r700SendTextureState(context_t *context) R600_OUT_BATCH(r700->textures[i]->SQ_TEX_RESOURCE4); R600_OUT_BATCH(r700->textures[i]->SQ_TEX_RESOURCE5); R600_OUT_BATCH(r700->textures[i]->SQ_TEX_RESOURCE6); + END_BATCH(); + BEGIN_BATCH_NO_AUTOSTATE(5); R600_OUT_BATCH(CP_PACKET3(R600_IT_SET_SAMPLER, 3)); R600_OUT_BATCH(i * 3); R600_OUT_BATCH(r700->textures[i]->SQ_TEX_SAMPLER0); |