nv30, nv40: unify identical nv[34]0_state_zsa.c
This commit is contained in:
committed by
Younes Manton
parent
938c6905cf
commit
64d882637d
@@ -15,7 +15,6 @@ C_SOURCES = \
|
||||
nv30_state_fb.c \
|
||||
nv30_state_stipple.c \
|
||||
nv30_state_viewport.c \
|
||||
nv30_state_zsa.c \
|
||||
nv30_surface.c \
|
||||
nv30_vbo.c \
|
||||
nv30_vertprog.c
|
||||
|
||||
@@ -27,12 +27,10 @@ extern void nv30_fragtex_bind(struct nvfx_context *);
|
||||
extern struct nvfx_state_entry nv30_state_stipple;
|
||||
extern struct nvfx_state_entry nv30_state_fragprog;
|
||||
extern struct nvfx_state_entry nv30_state_vertprog;
|
||||
extern struct nvfx_state_entry nv30_state_zsa;
|
||||
extern struct nvfx_state_entry nv30_state_viewport;
|
||||
extern struct nvfx_state_entry nv30_state_framebuffer;
|
||||
extern struct nvfx_state_entry nv30_state_fragtex;
|
||||
extern struct nvfx_state_entry nv30_state_vbo;
|
||||
extern struct nvfx_state_entry nv30_state_sr;
|
||||
|
||||
/* nv30_vbo.c */
|
||||
extern void nv30_draw_arrays(struct pipe_context *, unsigned mode,
|
||||
|
||||
@@ -15,7 +15,6 @@ C_SOURCES = \
|
||||
nv40_state_fb.c \
|
||||
nv40_state_stipple.c \
|
||||
nv40_state_viewport.c \
|
||||
nv40_state_zsa.c \
|
||||
nv40_surface.c \
|
||||
nv40_vbo.c \
|
||||
nv40_vertprog.c
|
||||
|
||||
@@ -31,13 +31,11 @@ extern void nv40_fragtex_bind(struct nvfx_context *);
|
||||
extern struct nvfx_state_entry nv40_state_stipple;
|
||||
extern struct nvfx_state_entry nv40_state_fragprog;
|
||||
extern struct nvfx_state_entry nv40_state_vertprog;
|
||||
extern struct nvfx_state_entry nv40_state_zsa;
|
||||
extern struct nvfx_state_entry nv40_state_viewport;
|
||||
extern struct nvfx_state_entry nv40_state_framebuffer;
|
||||
extern struct nvfx_state_entry nv40_state_fragtex;
|
||||
extern struct nvfx_state_entry nv40_state_vbo;
|
||||
extern struct nvfx_state_entry nv40_state_vtxfmt;
|
||||
extern struct nvfx_state_entry nv40_state_sr;
|
||||
|
||||
/* nv40_vbo.c */
|
||||
extern void nv40_draw_arrays(struct pipe_context *, unsigned mode,
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
#include "nv40_context.h"
|
||||
|
||||
static boolean
|
||||
nv40_state_zsa_validate(struct nvfx_context *nvfx)
|
||||
{
|
||||
so_ref(nvfx->zsa->so,
|
||||
&nvfx->state.hw[NVFX_STATE_ZSA]);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
struct nvfx_state_entry nv40_state_zsa = {
|
||||
.validate = nv40_state_zsa_validate,
|
||||
.dirty = {
|
||||
.pipe = NVFX_NEW_ZSA,
|
||||
.hw = NVFX_STATE_ZSA
|
||||
}
|
||||
};
|
||||
|
||||
static boolean
|
||||
nv40_state_sr_validate(struct nvfx_context *nvfx)
|
||||
{
|
||||
struct nouveau_stateobj *so = so_new(2, 2, 0);
|
||||
struct pipe_stencil_ref *sr = &nvfx->stencil_ref;
|
||||
|
||||
so_method(so, nvfx->screen->eng3d, NV34TCL_STENCIL_FRONT_FUNC_REF, 1);
|
||||
so_data (so, sr->ref_value[0]);
|
||||
so_method(so, nvfx->screen->eng3d, NV34TCL_STENCIL_BACK_FUNC_REF, 1);
|
||||
so_data (so, sr->ref_value[1]);
|
||||
|
||||
so_ref(so, &nvfx->state.hw[NVFX_STATE_SR]);
|
||||
so_ref(NULL, &so);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
struct nvfx_state_entry nv40_state_sr = {
|
||||
.validate = nv40_state_sr_validate,
|
||||
.dirty = {
|
||||
.pipe = NVFX_NEW_SR,
|
||||
.hw = NVFX_STATE_SR
|
||||
}
|
||||
};
|
||||
@@ -9,6 +9,7 @@ C_SOURCES = \
|
||||
nvfx_state_blend.c \
|
||||
nvfx_state_rasterizer.c \
|
||||
nvfx_state_scissor.c \
|
||||
nvfx_state_zsa.c \
|
||||
nvfx_transfer.c
|
||||
|
||||
include ../../Makefile.template
|
||||
|
||||
@@ -185,6 +185,8 @@ extern struct nvfx_state_entry nvfx_state_blend;
|
||||
extern struct nvfx_state_entry nvfx_state_blend_colour;
|
||||
extern struct nvfx_state_entry nvfx_state_rasterizer;
|
||||
extern struct nvfx_state_entry nvfx_state_scissor;
|
||||
extern struct nvfx_state_entry nvfx_state_sr;
|
||||
extern struct nvfx_state_entry nvfx_state_zsa;
|
||||
|
||||
/* nvfx_clear.c */
|
||||
extern void nvfx_clear(struct pipe_context *pipe, unsigned buffers,
|
||||
|
||||
@@ -14,8 +14,8 @@ static struct nvfx_state_entry *name##_render_states[] = { \
|
||||
&nvxx##_state_vertprog, \
|
||||
&nvfx_state_blend, \
|
||||
&nvfx_state_blend_colour, \
|
||||
&nvxx##_state_zsa, \
|
||||
&nvxx##_state_sr, \
|
||||
&nvfx_state_zsa, \
|
||||
&nvfx_state_sr, \
|
||||
&nvxx##_state_viewport, \
|
||||
&nvxx##_state_##vbo, \
|
||||
NULL \
|
||||
|
||||
+7
-7
@@ -1,15 +1,15 @@
|
||||
#include "nv30_context.h"
|
||||
#include "nvfx_context.h"
|
||||
|
||||
static boolean
|
||||
nv30_state_zsa_validate(struct nvfx_context *nvfx)
|
||||
nvfx_state_zsa_validate(struct nvfx_context *nvfx)
|
||||
{
|
||||
so_ref(nvfx->zsa->so,
|
||||
&nvfx->state.hw[NVFX_STATE_ZSA]);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
struct nvfx_state_entry nv30_state_zsa = {
|
||||
.validate = nv30_state_zsa_validate,
|
||||
struct nvfx_state_entry nvfx_state_zsa = {
|
||||
.validate = nvfx_state_zsa_validate,
|
||||
.dirty = {
|
||||
.pipe = NVFX_NEW_ZSA,
|
||||
.hw = NVFX_STATE_ZSA
|
||||
@@ -17,7 +17,7 @@ struct nvfx_state_entry nv30_state_zsa = {
|
||||
};
|
||||
|
||||
static boolean
|
||||
nv30_state_sr_validate(struct nvfx_context *nvfx)
|
||||
nvfx_state_sr_validate(struct nvfx_context *nvfx)
|
||||
{
|
||||
struct nouveau_stateobj *so = so_new(2, 2, 0);
|
||||
struct pipe_stencil_ref *sr = &nvfx->stencil_ref;
|
||||
@@ -32,8 +32,8 @@ nv30_state_sr_validate(struct nvfx_context *nvfx)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
struct nvfx_state_entry nv30_state_sr = {
|
||||
.validate = nv30_state_sr_validate,
|
||||
struct nvfx_state_entry nvfx_state_sr = {
|
||||
.validate = nvfx_state_sr_validate,
|
||||
.dirty = {
|
||||
.pipe = NVFX_NEW_SR,
|
||||
.hw = NVFX_STATE_SR
|
||||
Reference in New Issue
Block a user