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 unsigned max_sample_count; 43 }; 44 45 static inline struct nv30_screen * nv30_screen(struct pipe_screen * pscreen)46nv30_screen(struct pipe_screen *pscreen) 47 { 48 return (struct nv30_screen *)pscreen; 49 } 50 51 #endif 52