From: Tom Stellard Date: Thu, 24 Jul 2014 00:37:07 +0000 (-0400) Subject: gallium: Add PIPE_CAP_COMPUTE_IMAGES_SUPPORTED X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1607a8efc13aace755fe46eba8eb755cd93ea4e4;p=mesa.git gallium: Add PIPE_CAP_COMPUTE_IMAGES_SUPPORTED Reviewed-by: Marek Olšák Reviewed-by: Francisco Jerez --- diff --git a/src/gallium/docs/source/screen.rst b/src/gallium/docs/source/screen.rst index ba583fef6c0..830a1a59393 100644 --- a/src/gallium/docs/source/screen.rst +++ b/src/gallium/docs/source/screen.rst @@ -332,6 +332,8 @@ pipe_screen::get_compute_param. clock in MHz. Value type: ``uint32_t`` * ``PIPE_COMPUTE_CAP_MAX_COMPUTE_UNITS``: Maximum number of compute units Value type: ``uint32_t`` +* ``PIPE_COMPUTE_CAP_IMAGES_SUPPORTED``: Whether images are supported + non-zero means yes, zero means no. Value type: ``uint32_t`` .. _pipe_bind: diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c b/src/gallium/drivers/radeon/r600_pipe_common.c index 65359927059..bf0585d11fa 100644 --- a/src/gallium/drivers/radeon/r600_pipe_common.c +++ b/src/gallium/drivers/radeon/r600_pipe_common.c @@ -519,6 +519,13 @@ static int r600_get_compute_param(struct pipe_screen *screen, *max_compute_units = MAX2(rscreen->info.max_compute_units, 1); } return sizeof(uint32_t); + + case PIPE_COMPUTE_CAP_IMAGES_SUPPORTED: + if (ret) { + uint32_t *images_supported = ret; + *images_supported = 0; + } + return sizeof(uint32_t); } fprintf(stderr, "unknown PIPE_COMPUTE_CAP %d\n", param); diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h index d9b6e5aa53d..43bb1f57670 100644 --- a/src/gallium/include/pipe/p_defines.h +++ b/src/gallium/include/pipe/p_defines.h @@ -650,7 +650,8 @@ enum pipe_compute_cap PIPE_COMPUTE_CAP_MAX_INPUT_SIZE, PIPE_COMPUTE_CAP_MAX_MEM_ALLOC_SIZE, PIPE_COMPUTE_CAP_MAX_CLOCK_FREQUENCY, - PIPE_COMPUTE_CAP_MAX_COMPUTE_UNITS + PIPE_COMPUTE_CAP_MAX_COMPUTE_UNITS, + PIPE_COMPUTE_CAP_IMAGES_SUPPORTED }; /**