util: Move gallium's linked list to util
[mesa.git] / src / gallium / drivers / nouveau / nv30 / nv30_screen.h
1 #ifndef __NV30_SCREEN_H__
2 #define __NV30_SCREEN_H__
3
4 #include <stdio.h>
5
6 #include "util/list.h"
7
8 #include "nouveau_debug.h"
9 #include "nouveau_screen.h"
10 #include "nouveau_fence.h"
11 #include "nouveau_heap.h"
12 #include "nv30/nv30_winsys.h"
13 #include "nv30/nv30_resource.h"
14
15 struct nv30_context;
16
17 struct nv30_screen {
18 struct nouveau_screen base;
19
20 struct nv30_context *cur_ctx;
21
22 struct nouveau_bo *notify;
23
24 struct nouveau_object *ntfy;
25 struct nouveau_object *fence;
26
27 struct nouveau_object *query;
28 struct nouveau_heap *query_heap;
29 struct list_head queries;
30
31 struct nouveau_object *null;
32 struct nouveau_object *eng3d;
33 struct nouveau_object *m2mf;
34 struct nouveau_object *surf2d;
35 struct nouveau_object *swzsurf;
36 struct nouveau_object *sifm;
37
38 /*XXX: nvfx state */
39 struct nouveau_heap *vp_exec_heap;
40 struct nouveau_heap *vp_data_heap;
41 };
42
43 static INLINE struct nv30_screen *
44 nv30_screen(struct pipe_screen *pscreen)
45 {
46 return (struct nv30_screen *)pscreen;
47 }
48
49 #endif