diff options
author | Luca Barbieri <[email protected]> | 2010-02-20 18:37:43 +0100 |
---|---|---|
committer | Younes Manton <[email protected]> | 2010-03-15 00:03:01 -0400 |
commit | b8e56d4cddbd9c491b940e3ce5974c526802c752 (patch) | |
tree | 6ae0a1030c6a43c6596393b787cea3d7b7e23352 /src/gallium/drivers/nvfx/nvfx_screen.h | |
parent | d673c92810636dcc6de33d3618d494ce9f5717c1 (diff) |
nv30, nv40: unify all structures and headers, except shaders
This patch unifies nv[34]0_screen.h, nv[34]0_context.h and
nv[34]0_state.h
The unified files are put in a new "nvfx" directory.
nv30_context.h and nv40_context.h still exist to hold the function
prototypes and include nvfx_context.h
nv[34]0_screen.h and nv[34]0_state.h are deleted, replaced by the
unified versions.
nv40 includes some extra fields for swtnl and user clip planes
support.
These fields will be unused on nv30 until that functionality gets
added to it too (by unification with nv40).
Diffstat (limited to 'src/gallium/drivers/nvfx/nvfx_screen.h')
-rw-r--r-- | src/gallium/drivers/nvfx/nvfx_screen.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_screen.h b/src/gallium/drivers/nvfx/nvfx_screen.h new file mode 100644 index 00000000000..b56f2d4b3f3 --- /dev/null +++ b/src/gallium/drivers/nvfx/nvfx_screen.h @@ -0,0 +1,37 @@ +#ifndef __NVFX_SCREEN_H__ +#define __NVFX_SCREEN_H__ + +#include "nouveau/nouveau_screen.h" +#include "nouveau/nv04_surface_2d.h" + +struct nvfx_screen { + struct nouveau_screen base; + + struct nouveau_winsys *nvws; + + struct nvfx_context *cur_ctx; + + /* HW graphics objects */ + struct nv04_surface_2d *eng2d; + struct nouveau_grobj *eng3d; + struct nouveau_notifier *sync; + + /* Query object resources */ + struct nouveau_notifier *query; + struct nouveau_resource *query_heap; + + /* Vtxprog resources */ + struct nouveau_resource *vp_exec_heap; + struct nouveau_resource *vp_data_heap; + + /* Current 3D state of channel */ + struct nouveau_stateobj *state[NVFX_STATE_MAX]; +}; + +static INLINE struct nvfx_screen * +nvfx_screen(struct pipe_screen *screen) +{ + return (struct nvfx_screen *)screen; +} + +#endif |