1 #ifndef __NOUVEAU_CONTEXT_H__
2 #define __NOUVEAU_CONTEXT_H__
4 #include "pipe/p_context.h"
6 struct nouveau_pushbuf
;
8 struct nouveau_context
{
9 struct pipe_context pipe
;
10 struct nouveau_screen
*screen
;
12 struct nouveau_pushbuf
*pushbuf
;
17 void (*copy_data
)(struct nouveau_context
*,
18 struct nouveau_bo
*dst
, unsigned, unsigned,
19 struct nouveau_bo
*src
, unsigned, unsigned, unsigned);
20 void (*push_data
)(struct nouveau_context
*,
21 struct nouveau_bo
*dst
, unsigned, unsigned,
22 unsigned, const void *);
23 /* base, size refer to the whole constant buffer */
24 void (*push_cb
)(struct nouveau_context
*,
25 struct nouveau_bo
*, unsigned domain
,
26 unsigned base
, unsigned size
,
27 unsigned offset
, unsigned words
, const uint32_t *);
30 static INLINE
struct nouveau_context
*
31 nouveau_context(struct pipe_context
*pipe
)
33 return (struct nouveau_context
*)pipe
;
37 nouveau_context_init_vdec(struct nouveau_context
*);