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

Author: Francisco Jerez <curroje...@riseup.net>
Date:   Mon Feb 22 01:50:04 2010 +0100

dri/nouveau: Clean up the nv04 surface code a bit.

---

 src/mesa/drivers/dri/nouveau/nv04_surface.c |   36 +++++++-------------------
 1 files changed, 10 insertions(+), 26 deletions(-)

diff --git a/src/mesa/drivers/dri/nouveau/nv04_surface.c 
b/src/mesa/drivers/dri/nouveau/nv04_surface.c
index a219779..e8a5409 100644
--- a/src/mesa/drivers/dri/nouveau/nv04_surface.c
+++ b/src/mesa/drivers/dri/nouveau/nv04_surface.c
@@ -216,8 +216,8 @@ nv04_surface_copy_swizzle(GLcontext *ctx,
 
         /* If area is too large to copy in one shot we must copy it in
         * POT chunks to meet alignment requirements */
-       assert(sub_w == w || _mesa_is_pow_two(sub_w));
-       assert(sub_h == h || _mesa_is_pow_two(sub_h));
+       assert(sub_w == w || _mesa_is_pow_two(w));
+       assert(sub_h == h || _mesa_is_pow_two(h));
 
        nouveau_bo_marko(bctx, sifm, NV03_SCALED_IMAGE_FROM_MEMORY_DMA_IMAGE,
                         src->bo, bo_flags | NOUVEAU_BO_RD);
@@ -239,8 +239,6 @@ nv04_surface_copy_swizzle(GLcontext *ctx,
 
                for (x = 0; x < w; x += sub_w) {
                        sub_w = MIN2(sub_w, w - x);
-                       /* Must be 64-byte aligned */
-                       assert(!(dst->offset & 63));
 
                        MARK_RING(chan, 15, 1);
 
@@ -277,10 +275,10 @@ nv04_surface_copy_swizzle(GLcontext *ctx,
 
 static void
 nv04_surface_copy_m2mf(GLcontext *ctx,
-                         struct nouveau_surface *dst,
-                         struct nouveau_surface *src,
-                         int dx, int dy, int sx, int sy,
-                         int w, int h)
+                      struct nouveau_surface *dst,
+                      struct nouveau_surface *src,
+                      int dx, int dy, int sx, int sy,
+                      int w, int h)
 {
        struct nouveau_channel *chan = context_chan(ctx);
        struct nouveau_hw_state *hw = &to_nouveau_context(ctx)->hw;
@@ -484,34 +482,20 @@ nv04_surface_init(GLcontext *ctx)
        OUT_RING  (chan, NV04_GDI_RECTANGLE_TEXT_MONOCHROME_FORMAT_LE);
 
        /* Swizzled surface. */
-       switch (context_chipset(ctx) & 0xf0) {
-       case 0x00:
-       case 0x10:
+       if (context_chipset(ctx) < 0x20)
                class = NV04_SWIZZLED_SURFACE;
-               break;
-       case 0x20:
+       else
                class = NV20_SWIZZLED_SURFACE;
-               break;
-       default:
-               /* Famous last words: this really can't happen.. */
-               assert(0);
-               break;
-       }
 
        ret = nouveau_grobj_alloc(chan, handle++, class, &hw->swzsurf);
        if (ret)
                goto fail;
 
        /* Scaled image from memory. */
-       switch (context_chipset(ctx) & 0xf0) {
-       case 0x00:
+       if  (context_chipset(ctx) < 0x10)
                class = NV04_SCALED_IMAGE_FROM_MEMORY;
-               break;
-       case 0x10:
-       case 0x20:
+       else
                class = NV10_SCALED_IMAGE_FROM_MEMORY;
-               break;
-       }
 
        ret = nouveau_grobj_alloc(chan, handle++, class, &hw->sifm);
        if (ret)

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to