diff options
author | Marek Olšák <marek.olsak@amd.com> | 2017-11-15 22:02:51 +0100 |
---|---|---|
committer | Marek Olšák <marek.olsak@amd.com> | 2018-02-13 01:00:45 +0100 |
commit | 07c10cc59c164ddd0109e061dac8edf47437d8ca (patch) | |
tree | ad38e5e0408a4fe07fb41a77b0bacef2e19a7100 /src/mesa/drivers/dri/nouveau | |
parent | 79aca14f5f37de32140fb710970133c72886a0f2 (diff) |
mesa: separate legacy stuff from gl_texture_unit into gl_fixedfunc_texture_unit
Reviewed-by: Brian Paul <brianp@vmware.com>
Diffstat (limited to 'src/mesa/drivers/dri/nouveau')
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nouveau_util.h | 2 | ||||
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nv04_context.c | 14 | ||||
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nv04_state_frag.c | 6 | ||||
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nv10_state_frag.c | 4 | ||||
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nv10_state_tex.c | 5 | ||||
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nv20_state_tex.c | 3 |
6 files changed, 19 insertions, 15 deletions
diff --git a/src/mesa/drivers/dri/nouveau/nouveau_util.h b/src/mesa/drivers/dri/nouveau/nouveau_util.h index 8087445b65a..088a2563766 100644 --- a/src/mesa/drivers/dri/nouveau/nouveau_util.h +++ b/src/mesa/drivers/dri/nouveau/nouveau_util.h @@ -193,7 +193,7 @@ is_texture_source(int s) } static inline struct gl_texgen * -get_texgen_coord(struct gl_texture_unit *u, int i) +get_texgen_coord(struct gl_fixedfunc_texture_unit *u, int i) { return ((struct gl_texgen *[]) { &u->GenS, &u->GenT, &u->GenR, &u->GenQ }) [i]; diff --git a/src/mesa/drivers/dri/nouveau/nv04_context.c b/src/mesa/drivers/dri/nouveau/nv04_context.c index 4dbb950e9ab..324595e2403 100644 --- a/src/mesa/drivers/dri/nouveau/nv04_context.c +++ b/src/mesa/drivers/dri/nouveau/nv04_context.c @@ -32,17 +32,18 @@ #include "nv04_driver.h" static GLboolean -texunit_needs_combiners(struct gl_texture_unit *u) +texunit_needs_combiners(struct gl_texture_unit *u, + struct gl_fixedfunc_texture_unit *f) { struct gl_texture_object *t = u->_Current; struct gl_texture_image *ti = t->Image[0][t->BaseLevel]; return ti->TexFormat == MESA_FORMAT_A_UNORM8 || ti->TexFormat == MESA_FORMAT_L_UNORM8 || - u->EnvMode == GL_COMBINE || - u->EnvMode == GL_COMBINE4_NV || - u->EnvMode == GL_BLEND || - u->EnvMode == GL_ADD; + f->EnvMode == GL_COMBINE || + f->EnvMode == GL_COMBINE4_NV || + f->EnvMode == GL_BLEND || + f->EnvMode == GL_ADD; } struct nouveau_object * @@ -54,7 +55,8 @@ nv04_context_engine(struct gl_context *ctx) struct nouveau_object *fahrenheit; if ((ctx->Texture.Unit[0]._Current && - texunit_needs_combiners(&ctx->Texture.Unit[0])) || + texunit_needs_combiners(&ctx->Texture.Unit[0], + &ctx->Texture.FixedFuncUnit[0])) || ctx->Texture.Unit[1]._Current || ctx->Stencil.Enabled || GET_COLORMASK(ctx->Color.ColorMask, 0) != 0xf) diff --git a/src/mesa/drivers/dri/nouveau/nv04_state_frag.c b/src/mesa/drivers/dri/nouveau/nv04_state_frag.c index bfe8eaea123..26e2e91a6e0 100644 --- a/src/mesa/drivers/dri/nouveau/nv04_state_frag.c +++ b/src/mesa/drivers/dri/nouveau/nv04_state_frag.c @@ -64,7 +64,7 @@ struct combiner_state { * context. */ #define INIT_COMBINER(chan, ctx, rc, i) do { \ struct gl_tex_env_combine_state *c = \ - ctx->Texture.Unit[i]._CurrentCombine; \ + ctx->Texture.FixedFuncUnit[i]._CurrentCombine; \ (rc)->ctx = ctx; \ (rc)->unit = i; \ (rc)->alpha = __INIT_COMBINER_ALPHA_##chan; \ @@ -287,7 +287,7 @@ nv04_emit_tex_env(struct gl_context *ctx, int emit) /* calculate non-multitex state */ nv04->blend &= ~NV04_TEXTURED_TRIANGLE_BLEND_TEXTURE_MAP__MASK; if (ctx->Texture._MaxEnabledTexImageUnit != -1) - nv04->blend |= get_texenv_mode(ctx->Texture.Unit[0].EnvMode); + nv04->blend |= get_texenv_mode(ctx->Texture.FixedFuncUnit[0].EnvMode); else nv04->blend |= get_texenv_mode(GL_MODULATE); @@ -295,5 +295,5 @@ nv04_emit_tex_env(struct gl_context *ctx, int emit) nv04->alpha[i] = rc_a.hw; nv04->color[i] = rc_c.hw; nv04->factor = pack_rgba_f(MESA_FORMAT_B8G8R8A8_UNORM, - ctx->Texture.Unit[0].EnvColor); + ctx->Texture.FixedFuncUnit[0].EnvColor); } diff --git a/src/mesa/drivers/dri/nouveau/nv10_state_frag.c b/src/mesa/drivers/dri/nouveau/nv10_state_frag.c index 42dff085ca5..27400d3ebdc 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_state_frag.c +++ b/src/mesa/drivers/dri/nouveau/nv10_state_frag.c @@ -80,7 +80,7 @@ struct combiner_state { * context. */ #define INIT_COMBINER(chan, ctx, rc, i) do { \ struct gl_tex_env_combine_state *c = \ - ctx->Texture.Unit[i]._CurrentCombine; \ + ctx->Texture.FixedFuncUnit[i]._CurrentCombine; \ (rc)->ctx = ctx; \ (rc)->unit = i; \ (rc)->premodulate = c->_NumArgs##chan == 4; \ @@ -332,7 +332,7 @@ nv10_get_general_combiner(struct gl_context *ctx, int i, } *k = pack_rgba_f(MESA_FORMAT_B8G8R8A8_UNORM, - ctx->Texture.Unit[i].EnvColor); + ctx->Texture.FixedFuncUnit[i].EnvColor); *a_in = rc_a.in; *a_out = rc_a.out; *c_in = rc_c.in; diff --git a/src/mesa/drivers/dri/nouveau/nv10_state_tex.c b/src/mesa/drivers/dri/nouveau/nv10_state_tex.c index d85adfa9cf7..d741d416673 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv10_state_tex.c @@ -39,7 +39,8 @@ nv10_emit_tex_gen(struct gl_context *ctx, int emit) const int i = emit - NOUVEAU_STATE_TEX_GEN0; struct nouveau_context *nctx = to_nouveau_context(ctx); struct nouveau_pushbuf *push = context_push(ctx); - struct gl_texture_unit *unit = &ctx->Texture.Unit[i]; + struct gl_fixedfunc_texture_unit *unit = + &ctx->Texture.FixedFuncUnit[i]; int j; for (j = 0; j < 4; j++) { @@ -73,7 +74,7 @@ nv10_emit_tex_mat(struct gl_context *ctx, int emit) if (nctx->fallback == HWTNL && ((ctx->Texture._TexMatEnabled & 1 << i) || - ctx->Texture.Unit[i]._GenFlags)) { + ctx->Texture.FixedFuncUnit[i]._GenFlags)) { BEGIN_NV04(push, NV10_3D(TEX_MATRIX_ENABLE(i)), 1); PUSH_DATA (push, 1); diff --git a/src/mesa/drivers/dri/nouveau/nv20_state_tex.c b/src/mesa/drivers/dri/nouveau/nv20_state_tex.c index 72df81476c5..9960ae0d449 100644 --- a/src/mesa/drivers/dri/nouveau/nv20_state_tex.c +++ b/src/mesa/drivers/dri/nouveau/nv20_state_tex.c @@ -39,7 +39,8 @@ nv20_emit_tex_gen(struct gl_context *ctx, int emit) const int i = emit - NOUVEAU_STATE_TEX_GEN0; struct nouveau_context *nctx = to_nouveau_context(ctx); struct nouveau_pushbuf *push = context_push(ctx); - struct gl_texture_unit *unit = &ctx->Texture.Unit[i]; + struct gl_fixedfunc_texture_unit *unit = + &ctx->Texture.FixedFuncUnit[i]; int j; for (j = 0; j < 4; j++) { |