Home | History | Annotate | Download | only in nv30
      1 #ifndef __NV30_SCREEN_H__
      2 #define __NV30_SCREEN_H__
      3 
      4 #include <stdio.h>
      5 
      6 #define NOUVEAU_ERR(fmt, args...) \
      7    fprintf(stderr, "%s:%d -  "fmt, __FUNCTION__, __LINE__, ##args);
      8 
      9 #include "util/u_double_list.h"
     10 
     11 #include "nouveau/nouveau_screen.h"
     12 #include "nouveau/nouveau_fence.h"
     13 #include "nouveau/nouveau_heap.h"
     14 #include "nv30_winsys.h"
     15 #include "nv30_resource.h"
     16 
     17 struct nv30_context;
     18 
     19 struct nv30_screen {
     20    struct nouveau_screen base;
     21 
     22    struct nv30_context *cur_ctx;
     23 
     24    struct nouveau_bo *notify;
     25 
     26    struct nouveau_object *ntfy;
     27    struct nouveau_object *fence;
     28 
     29    struct nouveau_object *query;
     30    struct nouveau_heap *query_heap;
     31    struct list_head queries;
     32 
     33    struct nouveau_object *null;
     34    struct nouveau_object *eng3d;
     35    struct nouveau_object *m2mf;
     36    struct nouveau_object *surf2d;
     37    struct nouveau_object *swzsurf;
     38    struct nouveau_object *sifm;
     39 
     40    /*XXX: nvfx state */
     41    struct nouveau_heap *vp_exec_heap;
     42    struct nouveau_heap *vp_data_heap;
     43 };
     44 
     45 static INLINE struct nv30_screen *
     46 nv30_screen(struct pipe_screen *pscreen)
     47 {
     48    return (struct nv30_screen *)pscreen;
     49 }
     50 
     51 #endif
     52