mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-01 04:40:22 +01:00
nv40: clarify that tex code is fp-only, we'll do vertex textures eventually.
This commit is contained in:
parent
df09ed9d1e
commit
b56b3035f1
4 changed files with 12 additions and 11 deletions
|
|
@ -8,11 +8,11 @@ DRIVER_SOURCES = \
|
|||
nv40_context.c \
|
||||
nv40_draw.c \
|
||||
nv40_fragprog.c \
|
||||
nv40_fragtex.c \
|
||||
nv40_miptree.c \
|
||||
nv40_query.c \
|
||||
nv40_state.c \
|
||||
nv40_state_emit.c \
|
||||
nv40_state_tex.c \
|
||||
nv40_surface.c \
|
||||
nv40_vbo.c \
|
||||
nv40_vertprog.c
|
||||
|
|
|
|||
|
|
@ -113,6 +113,9 @@ extern void nv40_fragprog_bind(struct nv40_context *,
|
|||
extern void nv40_fragprog_destroy(struct nv40_context *,
|
||||
struct nv40_fragment_program *);
|
||||
|
||||
/* nv40_fragtex.c */
|
||||
extern void nv40_fragtex_bind(struct nv40_context *);
|
||||
|
||||
/* nv40_state.c and friends */
|
||||
extern void nv40_emit_hw_state(struct nv40_context *nv40);
|
||||
extern void nv40_state_tex_update(struct nv40_context *nv40);
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ nv40_texture_formats[] = {
|
|||
};
|
||||
|
||||
static struct nv40_texture_format *
|
||||
nv40_tex_format(uint pipe_format)
|
||||
nv40_fragtex_format(uint pipe_format)
|
||||
{
|
||||
struct nv40_texture_format *tf = nv40_texture_formats;
|
||||
|
||||
|
|
@ -53,7 +53,7 @@ nv40_tex_format(uint pipe_format)
|
|||
|
||||
|
||||
static void
|
||||
nv40_tex_unit_enable(struct nv40_context *nv40, int unit)
|
||||
nv40_fragtex_build(struct nv40_context *nv40, int unit)
|
||||
{
|
||||
struct nv40_sampler_state *ps = nv40->tex_sampler[unit];
|
||||
struct nv40_miptree *nv40mt = nv40->tex_miptree[unit];
|
||||
|
|
@ -62,11 +62,9 @@ nv40_tex_unit_enable(struct nv40_context *nv40, int unit)
|
|||
uint32_t txf, txs, txp;
|
||||
int swizzled = 0; /*XXX: implement in region code? */
|
||||
|
||||
tf = nv40_tex_format(pt->format);
|
||||
if (!tf || !tf->defined) {
|
||||
NOUVEAU_ERR("Unsupported texture format: 0x%x\n", pt->format);
|
||||
return;
|
||||
}
|
||||
tf = nv40_fragtex_format(pt->format);
|
||||
if (!tf)
|
||||
assert(0);
|
||||
|
||||
txf = ps->fmt;
|
||||
txf |= tf->format | 0x8000;
|
||||
|
|
@ -119,7 +117,7 @@ nv40_tex_unit_enable(struct nv40_context *nv40, int unit)
|
|||
}
|
||||
|
||||
void
|
||||
nv40_state_tex_update(struct nv40_context *nv40)
|
||||
nv40_fragtex_bind(struct nv40_context *nv40)
|
||||
{
|
||||
struct nv40_fragment_program *fp = nv40->fragprog.active;
|
||||
unsigned samplers, unit;
|
||||
|
|
@ -138,7 +136,7 @@ nv40_state_tex_update(struct nv40_context *nv40)
|
|||
unit = ffs(samplers) - 1;
|
||||
samplers &= ~(1 << unit);
|
||||
|
||||
nv40_tex_unit_enable(nv40, unit);
|
||||
nv40_fragtex_build(nv40, unit);
|
||||
}
|
||||
|
||||
nv40->fp_samplers = fp->samplers;
|
||||
|
|
@ -12,7 +12,7 @@ nv40_emit_hw_state(struct nv40_context *nv40)
|
|||
}
|
||||
|
||||
if (nv40->dirty_samplers || (nv40->dirty & NV40_NEW_FRAGPROG)) {
|
||||
nv40_state_tex_update(nv40);
|
||||
nv40_fragtex_bind(nv40);
|
||||
|
||||
BEGIN_RING(curie, NV40TCL_TEX_CACHE_CTL, 1);
|
||||
OUT_RING (2);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue