gallium: standardize naming of masks
[mesa.git] / src / gallium / drivers / nv50 / nv50_state.c
index 95f9d408b5e45fc709edad3f6620da00c2d5b510..ac236db29834cf3e26333f9b57a88469661ce075 100644 (file)
@@ -175,6 +175,32 @@ nv50_sampler_state_create(struct pipe_context *pipe,
                break;
        }
 
+       if (cso->max_anisotropy >= 16.0)
+               tsc[0] |= (7 << 20);
+       else
+       if (cso->max_anisotropy >= 12.0)
+               tsc[0] |= (6 << 20);
+       else
+       if (cso->max_anisotropy >= 10.0)
+               tsc[0] |= (5 << 20);
+       else
+       if (cso->max_anisotropy >= 8.0)
+               tsc[0] |= (4 << 20);
+       else
+       if (cso->max_anisotropy >= 6.0)
+               tsc[0] |= (3 << 20);
+       else
+       if (cso->max_anisotropy >= 4.0)
+               tsc[0] |= (2 << 20);
+       else
+       if (cso->max_anisotropy >= 2.0)
+               tsc[0] |= (1 << 20);
+
+       if (cso->compare_mode == PIPE_TEX_COMPARE_R_TO_TEXTURE) {
+               tsc[0] |= (1 << 8);
+               tsc[0] |= (nvgl_comparison_op(cso->compare_func) & 0x7);
+       }
+
        return (void *)tsc;
 }
 
@@ -377,8 +403,8 @@ nv50_depth_stencil_alpha_state_create(struct pipe_context *pipe,
                so_data  (so, nvgl_comparison_op(cso->stencil[0].func));
                so_method(so, tesla, NV50TCL_STENCIL_BACK_FUNC_REF, 3);
                so_data  (so, cso->stencil[0].ref_value);
-               so_data  (so, cso->stencil[0].write_mask);
-               so_data  (so, cso->stencil[0].value_mask);
+               so_data  (so, cso->stencil[0].writemask);
+               so_data  (so, cso->stencil[0].valuemask);
        } else {
                so_method(so, tesla, NV50TCL_STENCIL_BACK_ENABLE, 1);
                so_data  (so, 0);
@@ -392,8 +418,8 @@ nv50_depth_stencil_alpha_state_create(struct pipe_context *pipe,
                so_data  (so, nvgl_stencil_op(cso->stencil[1].zpass_op));
                so_data  (so, nvgl_comparison_op(cso->stencil[1].func));
                so_data  (so, cso->stencil[1].ref_value);
-               so_data  (so, cso->stencil[1].write_mask);
-               so_data  (so, cso->stencil[1].value_mask);
+               so_data  (so, cso->stencil[1].writemask);
+               so_data  (so, cso->stencil[1].valuemask);
        } else {
                so_method(so, tesla, NV50TCL_STENCIL_FRONT_ENABLE, 1);
                so_data  (so, 0);