r600g/compute: PIPE_CAP_COMPUTE should be false for pre-evergreen GPUs
authorTom Stellard <thomas.stellard@amd.com>
Mon, 24 Feb 2014 21:51:05 +0000 (16:51 -0500)
committerTom Stellard <thomas.stellard@amd.com>
Fri, 28 Feb 2014 21:17:34 +0000 (16:17 -0500)
This prevents clover from using unsupported devices.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
CC: "10.0 10.1" <mesa-stable@lists.freedesktop.org>
src/gallium/drivers/r600/r600_pipe.c

index f2782e6baa01eb0ec90c002294151c99d289e405..2fceb3c645a580fdb137cb62430a2a4b182adaed 100644 (file)
@@ -348,7 +348,6 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param)
        case PIPE_CAP_VERTEX_ELEMENT_SRC_OFFSET_4BYTE_ALIGNED_ONLY:
        case PIPE_CAP_USER_INDEX_BUFFERS:
        case PIPE_CAP_USER_CONSTANT_BUFFERS:
-       case PIPE_CAP_COMPUTE:
        case PIPE_CAP_START_INSTANCE:
        case PIPE_CAP_MAX_DUAL_SOURCE_RENDER_TARGETS:
        case PIPE_CAP_TEXTURE_BUFFER_OBJECTS:
@@ -358,6 +357,9 @@ static int r600_get_param(struct pipe_screen* pscreen, enum pipe_cap param)
         case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT:
                return 1;
 
+       case PIPE_CAP_COMPUTE:
+               return rscreen->b.chip_class > R700;
+
        case PIPE_CAP_TGSI_TEXCOORD:
                return 0;