Merge branch '7.8'
[mesa.git] / src / gallium / drivers / nv50 / nv50_screen.h
index db567aaac892060f28849dbfe416456b8409e256..d1bc80cb9edfcf51667e1ce8d3a486af0a9303ac 100644 (file)
@@ -1,27 +1,35 @@
 #ifndef __NV50_SCREEN_H__
 #define __NV50_SCREEN_H__
 
-#include "pipe/p_screen.h"
+#include "nouveau/nouveau_screen.h"
+#include "nv50_context.h"
 
 struct nv50_screen {
-       struct pipe_screen pipe;
+       struct nouveau_screen base;
 
        struct nouveau_winsys *nvws;
 
-       unsigned cur_pctx;
+       struct nv50_context *cur_ctx;
 
        struct nouveau_grobj *tesla;
        struct nouveau_grobj *eng2d;
        struct nouveau_grobj *m2mf;
        struct nouveau_notifier *sync;
 
-       struct pipe_buffer *constbuf;
-       struct nouveau_resource *vp_data_heap;
+       struct nouveau_bo *constbuf_misc[1];
+       struct nouveau_bo *constbuf_parm[PIPE_SHADER_TYPES];
 
-       struct pipe_buffer *tic;
-       struct pipe_buffer *tsc;
+       struct nouveau_resource *immd_heap[1];
+       struct nouveau_resource *parm_heap[PIPE_SHADER_TYPES];
+
+       struct pipe_buffer *strm_vbuf[16];
+
+       struct nouveau_bo *tic;
+       struct nouveau_bo *tsc;
 
        struct nouveau_stateobj *static_init;
+
+       boolean force_push;
 };
 
 static INLINE struct nv50_screen *