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 17struct nv30_context; 18 19struct 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 45static INLINE struct nv30_screen * 46nv30_screen(struct pipe_screen *pscreen) 47{ 48 return (struct nv30_screen *)pscreen; 49} 50 51#endif 52