summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/i915/i915_screen.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2011-09-27 22:22:06 +0200
committerMarek Olšák <[email protected]>2011-09-30 23:19:52 +0200
commitf5bfe54a34d9c8cd5de2b096d0e8486fe0d990a7 (patch)
tree5c61a58b22bd018661f8b4f12e5974bf07b18c20 /src/gallium/drivers/i915/i915_screen.c
parent557c3febdfd88ba1a41d3e8e0221e447d491c343 (diff)
gallium: add and use PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS
This removes: - PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS - PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS in favor of the that new per-shader cap. Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/drivers/i915/i915_screen.c')
-rw-r--r--src/gallium/drivers/i915/i915_screen.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/gallium/drivers/i915/i915_screen.c b/src/gallium/drivers/i915/i915_screen.c
index e0f44cd4ee8..3d601a5911d 100644
--- a/src/gallium/drivers/i915/i915_screen.c
+++ b/src/gallium/drivers/i915/i915_screen.c
@@ -140,11 +140,8 @@ i915_get_param(struct pipe_screen *screen, enum pipe_cap cap)
return is->debug.lie ? 1 : 0;
/* Texturing. */
- case PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS:
case PIPE_CAP_MAX_COMBINED_SAMPLERS:
return 8;
- case PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS:
- return 0;
case PIPE_CAP_MAX_TEXTURE_2D_LEVELS:
return I915_MAX_TEXTURE_2D_LEVELS;
case PIPE_CAP_MAX_TEXTURE_3D_LEVELS:
@@ -178,7 +175,12 @@ i915_get_shader_param(struct pipe_screen *screen, unsigned shader, enum pipe_sha
{
switch(shader) {
case PIPE_SHADER_VERTEX:
- return draw_get_shader_param(shader, cap);
+ switch (cap) {
+ case PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS:
+ return 0;
+ default:
+ return draw_get_shader_param(shader, cap);
+ }
case PIPE_SHADER_FRAGMENT:
break;
default:
@@ -220,6 +222,8 @@ i915_get_shader_param(struct pipe_screen *screen, unsigned shader, enum pipe_sha
return 0;
case PIPE_SHADER_CAP_INTEGERS:
return 0;
+ case PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS:
+ return 8;
default:
debug_printf("%s: Unknown cap %u.\n", __FUNCTION__, cap);
return 0;