summaryrefslogtreecommitdiff
path: root/src/gallium
diff options
context:
space:
mode:
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>2010-09-25 19:34:23 +0200
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>2010-09-25 19:37:09 +0200
commit86cddfb1104a3b59a91c480b5fc14e169f4885dc (patch)
tree66d69dc836f2b6c9be956539a9f0dd16e3575cdf /src/gallium
parent2ef1d759b34fb6e9795d70a7c7b6c6c274c64bf8 (diff)
nv50: fix/handle a few more PIPE_CAPs
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/nv50/nv50_screen.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c
index c5115372ed..c6bd62df1d 100644
--- a/src/gallium/drivers/nv50/nv50_screen.c
+++ b/src/gallium/drivers/nv50/nv50_screen.c
@@ -84,6 +84,7 @@ nv50_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
case PIPE_CAP_TWO_SIDED_STENCIL:
return 1;
case PIPE_CAP_GLSL:
+ case PIPE_CAP_SM3:
return 1;
case PIPE_CAP_ANISOTROPIC_FILTER:
return 1;
@@ -95,6 +96,8 @@ nv50_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
return 1;
case PIPE_CAP_TIMER_QUERY:
return 0;
+ case PIPE_CAP_STREAM_OUTPUT:
+ return 0;
case PIPE_CAP_TEXTURE_SHADOW_MAP:
return 1;
case PIPE_CAP_MAX_TEXTURE_2D_LEVELS:
@@ -137,8 +140,8 @@ nv50_screen_get_shader_param(struct pipe_screen *pscreen, unsigned shader,
switch(shader) {
case PIPE_SHADER_FRAGMENT:
case PIPE_SHADER_VERTEX:
- case PIPE_SHADER_GEOMETRY:
break;
+ case PIPE_SHADER_GEOMETRY:
default:
return 0;
}
@@ -158,6 +161,8 @@ nv50_screen_get_shader_param(struct pipe_screen *pscreen, unsigned shader,
return 64 / 4;
case PIPE_SHADER_CAP_MAX_CONSTS:
return 65536 / 16;
+ case PIPE_SHADER_CAP_MAX_CONST_BUFFERS: /* 16 - 1, but not implemented */
+ return 1;
case PIPE_SHADER_CAP_MAX_ADDRS: /* no spilling atm */
return 1;
case PIPE_SHADER_CAP_MAX_PREDS: /* not yet handled */