summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/freedreno/freedreno_screen.c
diff options
context:
space:
mode:
authorRob Clark <robclark@freedesktop.org>2015-07-25 12:53:23 -0400
committerRob Clark <robclark@freedesktop.org>2015-07-27 13:51:06 -0400
commit98a4b111fbb9e3ae45e907ddd4d2407e5ab669ec (patch)
tree5214a91820ff58b08052a022bc738245e2073b86 /src/gallium/drivers/freedreno/freedreno_screen.c
parent96d4db683f90f02e72d34ece544de7eedfa873ee (diff)
freedreno/ir3: add transform-feedback support
Signed-off-by: Rob Clark <robclark@freedesktop.org>
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_screen.c')
-rw-r--r--src/gallium/drivers/freedreno/freedreno_screen.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_screen.c b/src/gallium/drivers/freedreno/freedreno_screen.c
index b28d315cc12..97e4161ede2 100644
--- a/src/gallium/drivers/freedreno/freedreno_screen.c
+++ b/src/gallium/drivers/freedreno/freedreno_screen.c
@@ -227,9 +227,20 @@ fd_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
/* Stream output. */
case PIPE_CAP_MAX_STREAM_OUTPUT_BUFFERS:
+ if (is_a3xx(screen) || is_a4xx(screen))
+ return PIPE_MAX_SO_BUFFERS;
+ return 0;
case PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME:
+ if (is_a3xx(screen) || is_a4xx(screen))
+ return 1;
+ return 0;
case PIPE_CAP_MAX_STREAM_OUTPUT_SEPARATE_COMPONENTS:
+ if (is_a3xx(screen) || is_a4xx(screen))
+ return 16; /* should only be shader out limit? */
+ return 0;
case PIPE_CAP_MAX_STREAM_OUTPUT_INTERLEAVED_COMPONENTS:
+ if (is_a3xx(screen) || is_a4xx(screen))
+ return 16; /* should only be shader out limit? */
return 0;
/* Geometry shader output, unsupported. */