Mesa (master): nvc0: reset texture base address after read transfer

Christoph Bumiller chrisbmr at kemper.freedesktop.org
Wed Feb 9 15:05:53 UTC 2011


Module: Mesa
Branch: master
Commit: c62fc50c884e2755c0731c395f200d23b975fbde
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c62fc50c884e2755c0731c395f200d23b975fbde

Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date:   Wed Feb  2 21:38:07 2011 +0100

nvc0: reset texture base address after read transfer

---

 src/gallium/drivers/nvc0/nvc0_transfer.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/nvc0/nvc0_transfer.c b/src/gallium/drivers/nvc0/nvc0_transfer.c
index 92e006c..b279bdc 100644
--- a/src/gallium/drivers/nvc0/nvc0_transfer.c
+++ b/src/gallium/drivers/nvc0/nvc0_transfer.c
@@ -318,6 +318,7 @@ nvc0_miptree_transfer_new(struct pipe_context *pctx,
    tx->rect[1].domain = NOUVEAU_BO_GART;
 
    if (usage & PIPE_TRANSFER_READ) {
+      unsigned base = tx->rect[0].base;
       unsigned i;
       for (i = 0; i < tx->nlayers; ++i) {
          nvc0_m2mf_transfer_rect(pscreen, &tx->rect[1], &tx->rect[0],
@@ -328,9 +329,10 @@ nvc0_miptree_transfer_new(struct pipe_context *pctx,
             tx->rect[0].base += mt->layer_stride;
          tx->rect[1].base += size;
       }
+      tx->rect[0].z = z;
+      tx->rect[0].base = base;
+      tx->rect[1].base = 0;
    }
-   tx->rect[0].z = z;
-   tx->rect[1].base = 0;
 
    return &tx->base;
 }




More information about the mesa-commit mailing list