summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nvfx/nvfx_tex.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/nvfx/nvfx_tex.h')
-rw-r--r--src/gallium/drivers/nvfx/nvfx_tex.h175
1 files changed, 0 insertions, 175 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_tex.h b/src/gallium/drivers/nvfx/nvfx_tex.h
deleted file mode 100644
index 2f2d7378085..00000000000
--- a/src/gallium/drivers/nvfx/nvfx_tex.h
+++ /dev/null
@@ -1,175 +0,0 @@
-#ifndef NVFX_TEX_H_
-#define NVFX_TEX_H_
-
-#include "util/u_math.h"
-#include "pipe/p_defines.h"
-#include "pipe/p_state.h"
-
-
-static inline unsigned
-nvfx_tex_wrap_mode(unsigned wrap) {
- unsigned ret;
-
- switch (wrap) {
- case PIPE_TEX_WRAP_REPEAT:
- ret = NV30_3D_TEX_WRAP_S_REPEAT;
- break;
- case PIPE_TEX_WRAP_MIRROR_REPEAT:
- ret = NV30_3D_TEX_WRAP_S_MIRRORED_REPEAT;
- break;
- case PIPE_TEX_WRAP_CLAMP_TO_EDGE:
- ret = NV30_3D_TEX_WRAP_S_CLAMP_TO_EDGE;
- break;
- case PIPE_TEX_WRAP_CLAMP_TO_BORDER:
- ret = NV30_3D_TEX_WRAP_S_CLAMP_TO_BORDER;
- break;
- case PIPE_TEX_WRAP_CLAMP:
- ret = NV30_3D_TEX_WRAP_S_CLAMP;
- break;
- case PIPE_TEX_WRAP_MIRROR_CLAMP_TO_EDGE:
- ret = NV40_3D_TEX_WRAP_S_MIRROR_CLAMP_TO_EDGE;
- break;
- case PIPE_TEX_WRAP_MIRROR_CLAMP_TO_BORDER:
- ret = NV40_3D_TEX_WRAP_S_MIRROR_CLAMP_TO_BORDER;
- break;
- case PIPE_TEX_WRAP_MIRROR_CLAMP:
- ret = NV40_3D_TEX_WRAP_S_MIRROR_CLAMP;
- break;
- default:
- assert(0);
- ret = NV30_3D_TEX_WRAP_S_REPEAT;
- break;
- }
-
- return ret >> NV30_3D_TEX_WRAP_S__SHIFT;
-}
-
-static inline unsigned
-nvfx_tex_wrap_compare_mode(unsigned func)
-{
- switch (func) {
- case PIPE_FUNC_NEVER:
- return NV30_3D_TEX_WRAP_RCOMP_NEVER;
- case PIPE_FUNC_GREATER:
- return NV30_3D_TEX_WRAP_RCOMP_GREATER;
- case PIPE_FUNC_EQUAL:
- return NV30_3D_TEX_WRAP_RCOMP_EQUAL;
- case PIPE_FUNC_GEQUAL:
- return NV30_3D_TEX_WRAP_RCOMP_GEQUAL;
- case PIPE_FUNC_LESS:
- return NV30_3D_TEX_WRAP_RCOMP_LESS;
- case PIPE_FUNC_NOTEQUAL:
- return NV30_3D_TEX_WRAP_RCOMP_NOTEQUAL;
- case PIPE_FUNC_LEQUAL:
- return NV30_3D_TEX_WRAP_RCOMP_LEQUAL;
- case PIPE_FUNC_ALWAYS:
- return NV30_3D_TEX_WRAP_RCOMP_ALWAYS;
- default:
- assert(0);
- return 0;
- }
-}
-
-static inline unsigned nvfx_tex_filter(const struct pipe_sampler_state* cso)
-{
- unsigned filter = 0;
- switch (cso->mag_img_filter) {
- case PIPE_TEX_FILTER_LINEAR:
- filter |= NV30_3D_TEX_FILTER_MAG_LINEAR;
- break;
- case PIPE_TEX_FILTER_NEAREST:
- default:
- filter |= NV30_3D_TEX_FILTER_MAG_NEAREST;
- break;
- }
-
- switch (cso->min_img_filter) {
- case PIPE_TEX_FILTER_LINEAR:
- switch (cso->min_mip_filter) {
- case PIPE_TEX_MIPFILTER_NEAREST:
- filter |= NV30_3D_TEX_FILTER_MIN_LINEAR_MIPMAP_NEAREST;
- break;
- case PIPE_TEX_MIPFILTER_LINEAR:
- filter |= NV30_3D_TEX_FILTER_MIN_LINEAR_MIPMAP_LINEAR;
- break;
- case PIPE_TEX_MIPFILTER_NONE:
- default:
- filter |= NV30_3D_TEX_FILTER_MIN_LINEAR;
- break;
- }
- break;
- case PIPE_TEX_FILTER_NEAREST:
- default:
- switch (cso->min_mip_filter) {
- case PIPE_TEX_MIPFILTER_NEAREST:
- filter |= NV30_3D_TEX_FILTER_MIN_NEAREST_MIPMAP_NEAREST;
- break;
- case PIPE_TEX_MIPFILTER_LINEAR:
- filter |= NV30_3D_TEX_FILTER_MIN_NEAREST_MIPMAP_LINEAR;
- break;
- case PIPE_TEX_MIPFILTER_NONE:
- default:
- filter |= NV30_3D_TEX_FILTER_MIN_NEAREST;
- break;
- }
- break;
- }
- return filter;
-}
-
-static inline unsigned nvfx_tex_border_color(const float* border_color)
-{
- return ((float_to_ubyte(border_color[3]) << 24) |
- (float_to_ubyte(border_color[0]) << 16) |
- (float_to_ubyte(border_color[1]) << 8) |
- (float_to_ubyte(border_color[2]) << 0));
-}
-
-struct nvfx_sampler_state {
- uint32_t fmt;
- uint32_t wrap;
- uint32_t en;
- uint32_t filt;
- uint32_t bcol;
- uint32_t min_lod;
- uint32_t max_lod;
- boolean compare;
-};
-
-struct nvfx_sampler_view {
- struct pipe_sampler_view base;
- int offset;
- uint32_t swizzle;
- uint32_t npot_size;
- uint32_t filt;
- uint32_t wrap_mask;
- uint32_t wrap;
- uint32_t lod_offset;
- uint32_t max_lod_limit;
- union
- {
- struct
- {
- uint32_t fmt[4]; /* nv30 has 4 entries, nv40 one */
- int rect;
- } nv30;
- struct
- {
- uint32_t fmt[2]; /* nv30 has 4 entries, nv40 one */
- uint32_t npot_size2; /* nv40 only */
- } nv40;
- uint32_t init_fmt;
- } u;
-};
-
-struct nvfx_texture_format {
- int fmt[6];
- unsigned sign;
- unsigned wrap;
- unsigned char src[6];
- unsigned char comp[6];
-};
-
-extern struct nvfx_texture_format nvfx_texture_formats[PIPE_FORMAT_COUNT];
-
-#endif /* NVFX_TEX_H_ */