summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-02-13 23:34:53 +1000
committerDave Airlie <airlied@redhat.com>2009-02-13 23:34:53 +1000
commit2753dd42fd42a3383d2e74ab231d0b1373a2d46d (patch)
treec6f6b1a4f99fedefd6617b83a3d2e2bd9bdf73f2 /src
parentf363a97d2586a8487bfa64f882fbfc204a56fd05 (diff)
radeon/r200: make setTexOffset work again
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/r200/r200_state_init.c3
-rw-r--r--src/mesa/drivers/dri/radeon/radeon_common.c5
-rw-r--r--src/mesa/drivers/dri/radeon/radeon_state_init.c5
-rw-r--r--src/mesa/drivers/dri/radeon/radeon_texture.c1
4 files changed, 8 insertions, 6 deletions
diff --git a/src/mesa/drivers/dri/r200/r200_state_init.c b/src/mesa/drivers/dri/r200/r200_state_init.c
index 3165f7ec60..3d0ebff7c4 100644
--- a/src/mesa/drivers/dri/r200/r200_state_init.c
+++ b/src/mesa/drivers/dri/r200/r200_state_init.c
@@ -552,7 +552,8 @@ static void tex_emit(GLcontext *ctx, struct radeon_state_atom *atom)
} else if (!t) {
/* workaround for old CS mechanism */
OUT_BATCH(r200->radeon.radeonScreen->texOffset[RADEON_LOCAL_TEX_HEAP]);
- }
+ } else if (t->image_override)
+ OUT_BATCH(atom->cmd[10]);
END_BATCH();
}
diff --git a/src/mesa/drivers/dri/radeon/radeon_common.c b/src/mesa/drivers/dri/radeon/radeon_common.c
index f5f433b2ad..e816760e66 100644
--- a/src/mesa/drivers/dri/radeon/radeon_common.c
+++ b/src/mesa/drivers/dri/radeon/radeon_common.c
@@ -59,7 +59,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "swrast_setup/swrast_setup.h"
#include "dri_util.h"
-#include "drirenderbuffer.h"
#include "vblank.h"
#include "radeon_common.h"
@@ -511,8 +510,8 @@ void radeonPageFlip( __DRIdrawablePrivate *dPriv )
/* Get ready for drawing next frame. Update the renderbuffers'
* flippedOffset/Pitch fields so we draw into the right place.
*/
- driFlipRenderbuffers(rmesa->glCtx->WinSysDrawBuffer,
- rmesa->sarea->pfCurrentPage);
+ // driFlipRenderbuffers(rmesa->glCtx->WinSysDrawBuffer,
+ // rmesa->sarea->pfCurrentPage);
rmesa->state.color.rrb = rrb;
diff --git a/src/mesa/drivers/dri/radeon/radeon_state_init.c b/src/mesa/drivers/dri/radeon/radeon_state_init.c
index fc42318017..40317d570a 100644
--- a/src/mesa/drivers/dri/radeon/radeon_state_init.c
+++ b/src/mesa/drivers/dri/radeon/radeon_state_init.c
@@ -445,11 +445,12 @@ static void tex_emit(GLcontext *ctx, struct radeon_state_atom *atom)
if (t && t->mt && !t->image_override) {
OUT_BATCH_RELOC(t->tile_bits, t->mt->bo, 0,
RADEON_GEM_DOMAIN_VRAM, 0, 0);
- } else {
+ } else if (!t) {
/* workaround for old CS mechanism */
OUT_BATCH(r100->radeon.radeonScreen->texOffset[RADEON_LOCAL_TEX_HEAP]);
// OUT_BATCH(r100->radeon.radeonScreen);
- }
+ } else if (t->image_override)
+ OUT_BATCH(atom->cmd[4]);
OUT_BATCH_TABLE((atom->cmd+4), 5);
END_BATCH();
diff --git a/src/mesa/drivers/dri/radeon/radeon_texture.c b/src/mesa/drivers/dri/radeon/radeon_texture.c
index 2b04245a39..fe0031e3cd 100644
--- a/src/mesa/drivers/dri/radeon/radeon_texture.c
+++ b/src/mesa/drivers/dri/radeon/radeon_texture.c
@@ -881,3 +881,4 @@ int radeon_validate_texture_miptree(GLcontext * ctx, struct gl_texture_object *t
return GL_TRUE;
}
+