Mesa (master): nv50, nvc0: don't initialize the draw module, we don't use it

Christoph Bumiller chrisbmr at kemper.freedesktop.org
Tue Apr 24 11:37:58 UTC 2012


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

Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date:   Tue Apr 24 13:35:44 2012 +0200

nv50,nvc0: don't initialize the draw module, we don't use it

But some day we might (e.g. for blending 16 bpp formats on nv50).

---

 src/gallium/drivers/nv50/Makefile.sources |    1 -
 src/gallium/drivers/nv50/nv50_context.c   |   10 +++++++++-
 src/gallium/drivers/nv50/nv50_context.h   |    4 ++++
 src/gallium/drivers/nvc0/Makefile.sources |    1 -
 src/gallium/drivers/nvc0/nvc0_context.c   |   10 +++++++++-
 src/gallium/drivers/nvc0/nvc0_context.h   |    4 ++++
 6 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/nv50/Makefile.sources b/src/gallium/drivers/nv50/Makefile.sources
index eeb0e11..c112e82 100644
--- a/src/gallium/drivers/nv50/Makefile.sources
+++ b/src/gallium/drivers/nv50/Makefile.sources
@@ -1,6 +1,5 @@
 C_SOURCES := \
 	nv50_context.c \
-	nv50_draw.c \
 	nv50_formats.c \
 	nv50_miptree.c \
 	nv50_resource.c \
diff --git a/src/gallium/drivers/nv50/nv50_context.c b/src/gallium/drivers/nv50/nv50_context.c
index 8651be0..558fe0b 100644
--- a/src/gallium/drivers/nv50/nv50_context.c
+++ b/src/gallium/drivers/nv50/nv50_context.c
@@ -20,10 +20,13 @@
  * SOFTWARE.
  */
 
-#include "draw/draw_context.h"
 #include "pipe/p_defines.h"
 #include "util/u_framebuffer.h"
 
+#ifdef NV50_WITH_DRAW_MODULE
+#include "draw/draw_context.h"
+#endif
+
 #include "nv50_context.h"
 #include "nv50_screen.h"
 #include "nv50_resource.h"
@@ -103,7 +106,9 @@ nv50_destroy(struct pipe_context *pipe)
 
    nv50_context_unreference_resources(nv50);
 
+#ifdef NV50_WITH_DRAW_MODULE
    draw_destroy(nv50->draw);
+#endif
 
    FREE(nv50);
 }
@@ -157,9 +162,12 @@ nv50_create(struct pipe_screen *pscreen, void *priv)
    nv50_init_state_functions(nv50);
    nv50_init_resource_functions(pipe);
 
+#ifdef NV50_WITH_DRAW_MODULE
+   /* no software fallbacks implemented */
    nv50->draw = draw_create(pipe);
    assert(nv50->draw);
    draw_set_rasterize_stage(nv50->draw, nv50_draw_render_stage(nv50));
+#endif
 
    nouveau_context_init_vdec(&nv50->base);
 
diff --git a/src/gallium/drivers/nv50/nv50_context.h b/src/gallium/drivers/nv50/nv50_context.h
index 65304a8..1cee0e0 100644
--- a/src/gallium/drivers/nv50/nv50_context.h
+++ b/src/gallium/drivers/nv50/nv50_context.h
@@ -10,7 +10,9 @@
 #include "util/u_inlines.h"
 #include "util/u_dynarray.h"
 
+#ifdef NV50_WITH_DRAW_MODULE
 #include "draw/draw_vertex.h"
+#endif
 
 #include "nv50_debug.h"
 #include "nv50_winsys.h"
@@ -136,7 +138,9 @@ struct nv50_context {
 
    boolean vbo_push_hint;
 
+#ifdef NV50_WITH_DRAW_MODULE
    struct draw_context *draw;
+#endif
 };
 
 static INLINE struct nv50_context *
diff --git a/src/gallium/drivers/nvc0/Makefile.sources b/src/gallium/drivers/nvc0/Makefile.sources
index 394c5b9..d74ecf3 100644
--- a/src/gallium/drivers/nvc0/Makefile.sources
+++ b/src/gallium/drivers/nvc0/Makefile.sources
@@ -1,6 +1,5 @@
 C_SOURCES := \
 	nvc0_context.c \
-	nvc0_draw.c \
 	nvc0_formats.c \
 	nvc0_miptree.c \
 	nvc0_resource.c \
diff --git a/src/gallium/drivers/nvc0/nvc0_context.c b/src/gallium/drivers/nvc0/nvc0_context.c
index 8abac09..b0ab5bd 100644
--- a/src/gallium/drivers/nvc0/nvc0_context.c
+++ b/src/gallium/drivers/nvc0/nvc0_context.c
@@ -20,10 +20,13 @@
  * SOFTWARE.
  */
 
-#include "draw/draw_context.h"
 #include "pipe/p_defines.h"
 #include "util/u_framebuffer.h"
 
+#ifdef NVC0_WITH_DRAW_MODULE
+#include "draw/draw_context.h"
+#endif
+
 #include "nvc0_context.h"
 #include "nvc0_screen.h"
 #include "nvc0_resource.h"
@@ -91,7 +94,9 @@ nvc0_destroy(struct pipe_context *pipe)
 
    nvc0_context_unreference_resources(nvc0);
 
+#ifdef NVC0_WITH_DRAW_MODULE
    draw_destroy(nvc0->draw);
+#endif
 
    FREE(nvc0);
 }
@@ -158,9 +163,12 @@ nvc0_create(struct pipe_screen *pscreen, void *priv)
    nvc0_init_transfer_functions(nvc0);
    nvc0_init_resource_functions(pipe);
 
+#ifdef NVC0_WITH_DRAW_MODULE
+   /* no software fallbacks implemented */
    nvc0->draw = draw_create(pipe);
    assert(nvc0->draw);
    draw_set_rasterize_stage(nvc0->draw, nvc0_draw_render_stage(nvc0));
+#endif
 
    nouveau_context_init_vdec(&nvc0->base);
 
diff --git a/src/gallium/drivers/nvc0/nvc0_context.h b/src/gallium/drivers/nvc0/nvc0_context.h
index 140ce1a..d2dee03 100644
--- a/src/gallium/drivers/nvc0/nvc0_context.h
+++ b/src/gallium/drivers/nvc0/nvc0_context.h
@@ -10,7 +10,9 @@
 #include "util/u_inlines.h"
 #include "util/u_dynarray.h"
 
+#ifdef NVC0_WITH_DRAW_MODULE
 #include "draw/draw_vertex.h"
+#endif
 
 #include "nv50/nv50_debug.h"
 #include "nvc0_winsys.h"
@@ -155,7 +157,9 @@ struct nvc0_context {
    struct pipe_stream_output_target *tfbbuf[4];
    unsigned num_tfbbufs;
 
+#ifdef NVC0_WITH_DRAW_MODULE
    struct draw_context *draw;
+#endif
 };
 
 static INLINE struct nvc0_context *




More information about the mesa-commit mailing list