diff options
Diffstat (limited to 'src/mesa/drivers/dri/nouveau/nouveau_context.h')
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nouveau_context.h | 40 |
1 files changed, 25 insertions, 15 deletions
diff --git a/src/mesa/drivers/dri/nouveau/nouveau_context.h b/src/mesa/drivers/dri/nouveau/nouveau_context.h index cd4a9fbc0ff..8bba51e8091 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_context.h +++ b/src/mesa/drivers/dri/nouveau/nouveau_context.h @@ -29,7 +29,6 @@ #include "nouveau_screen.h" #include "nouveau_state.h" -#include "nouveau_bo_state.h" #include "nouveau_scratch.h" #include "nouveau_render.h" @@ -41,20 +40,28 @@ enum nouveau_fallback { SWRAST, }; +#define BUFCTX_FB 0 +#define BUFCTX_VTX 1 +#define BUFCTX_TEX(i) (2 + (i)) + struct nouveau_hw_state { - struct nouveau_channel *chan; - - struct nouveau_notifier *ntfy; - struct nouveau_grobj *eng3d; - struct nouveau_grobj *eng3dm; - struct nouveau_grobj *surf3d; - struct nouveau_grobj *m2mf; - struct nouveau_grobj *surf2d; - struct nouveau_grobj *rop; - struct nouveau_grobj *patt; - struct nouveau_grobj *rect; - struct nouveau_grobj *swzsurf; - struct nouveau_grobj *sifm; + struct nouveau_object *chan; + struct nouveau_client *client; + struct nouveau_pushbuf *pushbuf; + struct nouveau_bufctx *bufctx; + + struct nouveau_object *null; + struct nouveau_object *ntfy; + struct nouveau_object *eng3d; + struct nouveau_object *eng3dm; + struct nouveau_object *surf3d; + struct nouveau_object *m2mf; + struct nouveau_object *surf2d; + struct nouveau_object *rop; + struct nouveau_object *patt; + struct nouveau_object *rect; + struct nouveau_object *swzsurf; + struct nouveau_object *sifm; }; struct nouveau_context { @@ -66,7 +73,6 @@ struct nouveau_context { enum nouveau_fallback fallback; struct nouveau_hw_state hw; - struct nouveau_bo_state bo; struct nouveau_render_state render; struct nouveau_scratch_state scratch; @@ -84,6 +90,10 @@ struct nouveau_context { (context_dev(ctx)->chipset) #define context_chan(ctx) \ (to_nouveau_context(ctx)->hw.chan) +#define context_client(ctx) \ + (to_nouveau_context(ctx)->hw.client) +#define context_push(ctx) \ + (to_nouveau_context(ctx)->hw.pushbuf) #define context_eng3d(ctx) \ (to_nouveau_context(ctx)->hw.eng3d) #define context_drv(ctx) \ |