get rid of chip_object struct
authorAlex Deucher <alexdeucher@gmail.com>
Fri, 29 May 2009 19:37:04 +0000 (15:37 -0400)
committerAlex Deucher <alexdeucher@gmail.com>
Fri, 29 May 2009 19:37:04 +0000 (15:37 -0400)
14 files changed:
src/mesa/drivers/dri/r600/r600_context.c
src/mesa/drivers/dri/r600/r600_context.h
src/mesa/drivers/dri/r600/r700_assembler.c
src/mesa/drivers/dri/r600/r700_chip.c
src/mesa/drivers/dri/r600/r700_chip.h
src/mesa/drivers/dri/r600/r700_clear.c
src/mesa/drivers/dri/r600/r700_fragprog.c
src/mesa/drivers/dri/r600/r700_ioctl.c
src/mesa/drivers/dri/r600/r700_oglprog.c
src/mesa/drivers/dri/r600/r700_render.c
src/mesa/drivers/dri/r600/r700_shader.c
src/mesa/drivers/dri/r600/r700_state.c
src/mesa/drivers/dri/r600/r700_tex.c
src/mesa/drivers/dri/r600/r700_vertprog.c

index c54dae0c538516e8dc3fdec04b7563833e9e86e0..526d02ed571441ae1f72adf29fb380045670b45c 100644 (file)
@@ -63,7 +63,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "r600_emit.h"
 #include "radeon_bocs_wrapper.h"
 
-#include "r700_chip.h"
 #include "r700_state.h"
 #include "r700_ioctl.h"
 
@@ -369,9 +368,6 @@ GLboolean r600CreateContext(const __GLcontextModes * glVisual,
                _mesa_enable_extension(ctx, "GL_EXT_texture_compression_s3tc");
        }
 
-       r600->disable_lowimpact_fallback =
-           driQueryOptionb(&r600->radeon.optionCache,
-                           "disable_lowimpact_fallback");
        radeon_fbo_init(&r600->radeon);
        radeonInitSpanFuncs( ctx );
 
@@ -410,7 +406,7 @@ r600DestroyContext (__DRIcontextPrivate * driContextPriv)
     context_t *context = ctx ? R700_CONTEXT(ctx) : NULL;
 
     if (context)
-           (context->chipobj.DestroyChipObj)(context->chipobj.pvChipObj);
+           FREE(context->hw.pStateList);
 }
 
 
index 321b05d9306a7d1d20c92da92887465975772ca4..52512aacc04f50a794ed1e095dd23019e46d96a5 100644 (file)
@@ -48,6 +48,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "main/mtypes.h"
 #include "main/colormac.h"
 
+#include "r700_chip.h"
+
 struct r600_context;
 typedef struct r600_context context_t;
 
@@ -127,32 +129,20 @@ typedef struct offset_modifiers
     GLuint mask;
 } offset_modifiers;
 
-typedef struct chip_object
-{
-    void      *pvChipObj;
-
-    /* ------------  OUT ------------------- */
-    GLboolean (*DestroyChipObj)(GLcontext * ctx);
-
-} chip_object;
-
 /**
  * \brief R600 context structure.
  */
 struct r600_context {
        struct radeon_context radeon;   /* parent class, must be first */
 
-    /* ------ */
-    chip_object chipobj;
+       /* ------ */
+       R700_CHIP_CONTEXT hw;
 
        /* Vertex buffers
         */
        GLvector4f dummy_attrib[_TNL_ATTRIB_MAX];
        GLvector4f *temp_attrib[_TNL_ATTRIB_MAX];
 
-       GLboolean disable_lowimpact_fallback;
-
-       GLboolean vap_flush_needed;
 };
 
 #define R700_CONTEXT(ctx)              ((context_t *)(ctx->DriverCtx))
@@ -163,6 +153,18 @@ extern GLboolean r600CreateContext(const __GLcontextModes * glVisual,
                                   __DRIcontextPrivate * driContextPriv,
                                   void *sharedContextPrivate);
 
+#define R700_CONTEXT_STATES(context) ((R700_CHIP_CONTEXT *)(&context->hw))
+
+extern GLboolean r700InitChipObject(context_t *context);
+extern GLboolean r700SendContextStates(context_t *context);
+extern int       r700SetupStreams(GLcontext * ctx);
+extern void      r700SetupVTXConstants(GLcontext  * ctx, 
+                                      unsigned int nStreamID,
+                                      void *       pAos,
+                                      unsigned int size,      /* number of elements in vector */
+                                      unsigned int stride,
+                                      unsigned int Count);    /* number of vectors in stream */
+
 #define RADEON_D_CAPTURE 0
 #define RADEON_D_PLAYBACK 1
 #define RADEON_D_PLAYBACK_RAW 2
index 1610020ee86d76344ed9283ca1b9cf2bc372d8da..a564d6f099b026b6524fd861619d6c07ebd9bd20 100644 (file)
@@ -34,7 +34,6 @@
 #include "main/imports.h"
 
 #include "r600_context.h"
-#include "r700_chip.h"
 #include "r700_debug.h"
 
 #include "r700_assembler.h"
index 9b302492317bf363aee56163374bec691cfbf1a0..5ae70c99c743cc01963af6efe437c603bdef1838 100644 (file)
@@ -31,7 +31,6 @@
 #include "r600_context.h"
 #include "r600_cmdbuf.h"
 
-#include "r700_chip.h"
 #include "r700_state.h"
 #include "r700_tex.h"
 #include "r700_oglprog.h"
 #include "r700_vertprog.h"
 #include "r700_ioctl.h"
 
-static GLboolean r700DestroyChipObj(GLcontext * ctx)
-{
-    context_t * context = R700_CONTEXT(ctx);
-    R700_CHIP_CONTEXT *r700;
-
-    if(NULL == context->chipobj.pvChipObj)
-    {
-        return GL_TRUE;
-    }
-
-    r700 = (R700_CHIP_CONTEXT *)(context->chipobj.pvChipObj);
-
-    FREE(r700->pStateList);
-
-    FREE(r700);
-
-    return GL_TRUE;
-}
-
 #define LINK_STATES(reg)                                            \
 do                                                                  \
 {                                                                   \
@@ -71,11 +51,7 @@ GLboolean r700InitChipObject(context_t *context)
 {
     ContextState * pStateListWork;
 
-    R700_CHIP_CONTEXT *r700 = CALLOC( sizeof(R700_CHIP_CONTEXT) );
-
-    context->chipobj.pvChipObj = (void*)r700;
-
-    context->chipobj.DestroyChipObj = r700DestroyChipObj;
+    R700_CHIP_CONTEXT *r700 = &context->hw;
 
     /* init state list */
     r700->pStateList = (ContextState*) MALLOC (sizeof(ContextState)*sizeof(R700_CHIP_CONTEXT)/sizeof(unsigned int));
index 88b507547990fc86282e5c04e9a0d61015b8bd19..918cb222d4074b78412e9e7726204615a56017b6 100644 (file)
@@ -451,17 +451,5 @@ typedef struct _R700_CHIP_CONTEXT
        
 } R700_CHIP_CONTEXT;
 
-#define R700_CONTEXT_STATES(context) ((R700_CHIP_CONTEXT *)(context->chipobj.pvChipObj))
-
-extern GLboolean r700InitChipObject(context_t *context);
-extern GLboolean r700SendContextStates(context_t *context);
-extern int       r700SetupStreams(GLcontext * ctx);
-extern void      r700SetupVTXConstants(GLcontext  * ctx, 
-                                      unsigned int nStreamID,
-                                      void *       pAos,
-                                      unsigned int size,      /* number of elements in vector */
-                                      unsigned int stride,
-                                      unsigned int Count);    /* number of vectors in stream */
-
 #endif /* _R700_CHIP_H_ */
 
index e610514e01d208bf601bcaffeb0761f23432c938..e1164a09d7cc2c81d4b4292c0b3c58f879624129 100644 (file)
@@ -33,7 +33,6 @@
 #include "main/enums.h"
 
 #include "r600_context.h"
-#include "r700_chip.h"
 
 #include "r700_shaderinst.h"
 #include "r600_emit.h"
index c46094dcd7ee1957fcee578981828562f14f03a1..cebb82d8532491f85ead7b1383ab74049d253c92 100644 (file)
@@ -38,7 +38,6 @@
 #include "r600_context.h"
 #include "r600_cmdbuf.h"
 
-#include "r700_chip.h"
 #include "r700_fragprog.h"
 
 #include "r700_debug.h"
@@ -259,7 +258,7 @@ GLboolean r700SetupFragmentProgram(GLcontext * ctx)
     context_t *context = R700_CONTEXT(ctx);   
     BATCH_LOCALS(&context->radeon);
     
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     struct r700_fragment_program *fp = (struct r700_fragment_program *)
                                           (ctx->FragmentProgram._Current);
index f8c3359a47d076885a9645fa5613fca061f9b8e8..c4795320012786a5d39e4faa6e83c1c665c1eb1c 100644 (file)
@@ -37,7 +37,6 @@
 #include "radeon_lock.h"
 #include "r600_context.h"
 
-#include "r700_chip.h"
 #include "r700_ioctl.h"
 #include "r700_clear.h"
 
index ba49367dc4fbf5cb2861d9d0bd4dfdf2b5956688..36de143b1a743c5ad0c30b398db94f14d2d8f920 100644 (file)
@@ -34,7 +34,6 @@
 
 #include "r600_context.h"
 
-#include "r700_chip.h"
 #include "r700_oglprog.h"
 #include "r700_fragprog.h"
 #include "r700_vertprog.h"
index ded5f51a6a18f70c5415e50407be1e40e473fb35..cc90e8dfb7cabbb63ad30fe0be0bba886a82ca96 100644 (file)
@@ -47,7 +47,6 @@
 #include "r600_context.h"
 #include "r600_cmdbuf.h"
 
-#include "r700_chip.h"
 #include "r700_tex.h"
 
 #include "r700_vertprog.h"
@@ -109,7 +108,7 @@ static GLboolean r700SetupShaders(GLcontext * ctx)
 {
     context_t *context = R700_CONTEXT(ctx);
 
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     GLuint exportCount;
 
@@ -133,7 +132,7 @@ GLboolean r700SendTextureState(context_t *context)
 {
     unsigned int i;
 
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 #if 0 /* to be enabled */
     for(i=0; i<R700_TEXTURE_NUMBERUNITS; i++)
     {
@@ -238,7 +237,7 @@ static GLboolean r700RunRender(GLcontext * ctx,
                                           struct tnl_pipeline_stage *stage)
 {
     context_t *context = R700_CONTEXT(ctx);
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 #if 1
     BATCH_LOCALS(&context->radeon);
 
index 446f9f959bc86322a4af0ea764af07d9df2b1f80..b4fd51c137019ce3a4297317d5c541a7e9eef294 100644 (file)
@@ -35,7 +35,6 @@
 #include "main/glheader.h"
 
 #include "r600_context.h"
-#include "r700_chip.h"
 #include "r700_debug.h"
 
 #include "r700_shader.h"
index e3e78df16c2e3a4a0b142311a42ae25f24fac7dd..768e1846235ae971a29565483a95e0564cbc41e1 100644 (file)
@@ -49,7 +49,6 @@
 
 #include "r600_context.h"
 
-#include "r700_chip.h"
 #include "r700_state.h"
 
 #include "r700_fragprog.h"
@@ -190,7 +189,7 @@ static void r700InvalidateState(GLcontext * ctx, GLuint new_state) //-----------
 {
     context_t *context = R700_CONTEXT(ctx);
 
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     _swrast_InvalidateState(ctx, new_state);
        _swsetup_InvalidateState(ctx, new_state);
@@ -239,7 +238,7 @@ static void r700SetDepthState(GLcontext * ctx)
 {
        context_t *context = R700_CONTEXT(ctx);
 
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     if (ctx->Depth.Test)
     {
@@ -322,7 +321,7 @@ static void r700BlendFuncSeparate(GLcontext * ctx,
 
 static void r700UpdateCulling(GLcontext * ctx)
 {
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(R700_CONTEXT(ctx)->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&R700_CONTEXT(ctx)->hw);
 
     CLEARbit(r700->PA_SU_SC_MODE_CNTL.u32All, FACE_bit);
     CLEARbit(r700->PA_SU_SC_MODE_CNTL.u32All, CULL_FRONT_bit);
@@ -490,7 +489,7 @@ static void r700Viewport(GLcontext * ctx,
 {
     context_t *context = R700_CONTEXT(ctx);
 
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     __DRIdrawablePrivate *dPriv = context->radeon.dri.drawable;
 
@@ -524,12 +523,7 @@ static void r700Viewport(GLcontext * ctx,
        tz = v[MAT_TZ] * scale;
 
     /* TODO : Need DMA flush as well. */
-#if 0 /* to be enabled */
-    if(context->cmdbuf.count_used > 0)
-    {
-           (context->chipobj.FlushCmdBuffer)(context);
-    }
-#endif /* to be enabled */
+
     r700->PA_CL_VPORT_XSCALE.u32All  = *((unsigned int*)(&sx));
     r700->PA_CL_VPORT_XOFFSET.u32All = *((unsigned int*)(&tx));
 
@@ -591,7 +585,7 @@ static void r700Scissor(GLcontext* ctx, GLint x, GLint y, GLsizei w, GLsizei h)
 
 void r700SetRenderTarget(context_t *context)
 {
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     struct radeon_renderbuffer *rrb;
     unsigned int nPitchInPixel;
@@ -774,7 +768,7 @@ void r700InitState(GLcontext * ctx) //-------------------
 {
     context_t *context = R700_CONTEXT(ctx);
 
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     /* Turn off vgt reuse */
     r700->VGT_REUSE_OFF.u32All = 0;
index e2de8faf7721c489c61fc66c207dafc2ee26bec1..21c9379729000199f0ebe2fa0811e05fad467a8f 100644 (file)
@@ -40,7 +40,6 @@
 #include "radeon_common.h"
 
 #include "r600_context.h"
-#include "r700_chip.h"
 
 #include "r700_state.h"
 
index 2861918c4234d59b0d7eacb5017ab5b62401ac57..a827de197be2c9a5194fba1a85ef2ddc19f13c68 100644 (file)
@@ -41,7 +41,6 @@
 #include "r600_context.h"
 #include "r600_cmdbuf.h"
 
-#include "r700_chip.h"
 #include "r700_debug.h"
 #include "r700_vertprog.h"
 
@@ -339,7 +338,7 @@ GLboolean r700SetupVertexProgram(GLcontext * ctx)
 
     BATCH_LOCALS(&context->radeon);
 
-    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(context->chipobj.pvChipObj);
+    R700_CHIP_CONTEXT *r700 = (R700_CHIP_CONTEXT*)(&context->hw);
 
     struct r700_vertex_program *vp
              = (struct r700_vertex_program *)ctx->VertexProgram._Current;