summaryrefslogtreecommitdiff
path: root/lib/mesa/src/gallium/auxiliary/util/u_screen.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mesa/src/gallium/auxiliary/util/u_screen.c')
-rw-r--r--lib/mesa/src/gallium/auxiliary/util/u_screen.c56
1 files changed, 55 insertions, 1 deletions
diff --git a/lib/mesa/src/gallium/auxiliary/util/u_screen.c b/lib/mesa/src/gallium/auxiliary/util/u_screen.c
index 88f4945e7..ae024f0e6 100644
--- a/lib/mesa/src/gallium/auxiliary/util/u_screen.c
+++ b/lib/mesa/src/gallium/auxiliary/util/u_screen.c
@@ -223,6 +223,7 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
case PIPE_CAP_SHAREABLE_SHADERS:
case PIPE_CAP_COPY_BETWEEN_COMPRESSED_AND_PLAIN_FORMATS:
case PIPE_CAP_CLEAR_TEXTURE:
+ case PIPE_CAP_CLEAR_SCISSORED:
case PIPE_CAP_DRAW_PARAMETERS:
case PIPE_CAP_TGSI_PACK_HALF_FLOAT:
case PIPE_CAP_MULTI_DRAW_INDIRECT:
@@ -258,6 +259,8 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
case PIPE_CAP_MAX_WINDOW_RECTANGLES: /* Enables EXT_window_rectangles */
case PIPE_CAP_POLYGON_OFFSET_UNITS_UNSCALED:
case PIPE_CAP_VIEWPORT_SUBPIXEL_BITS:
+ case PIPE_CAP_VIEWPORT_SWIZZLE:
+ case PIPE_CAP_VIEWPORT_MASK:
case PIPE_CAP_MIXED_COLOR_DEPTH_BITS:
case PIPE_CAP_TGSI_ARRAY_COMPONENTS:
case PIPE_CAP_STREAM_OUTPUT_INTERLEAVE_BUFFERS:
@@ -296,6 +299,10 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
*/
return 1;
+ case PIPE_CAP_PREFER_IMM_ARRAYS_AS_CONSTBUF:
+ /* Don't unset this unless your driver can do better */
+ return 1;
+
case PIPE_CAP_POST_DEPTH_COVERAGE:
case PIPE_CAP_BINDLESS_TEXTURE:
case PIPE_CAP_NIR_SAMPLERS_AS_DEREF:
@@ -337,6 +344,7 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
case PIPE_CAP_ATOMIC_FLOAT_MINMAX:
case PIPE_CAP_SHADER_SAMPLES_IDENTICAL:
case PIPE_CAP_TGSI_ATOMINC_WRAP:
+ case PIPE_CAP_TGSI_TG4_COMPONENT_IN_SWIZZLE:
return 0;
case PIPE_CAP_MAX_GS_INVOCATIONS:
@@ -366,12 +374,19 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
case PIPE_CAP_COMPUTE_SHADER_DERIVATIVES:
return 0;
- case PIPE_CAP_MAX_FRAMES_IN_FLIGHT:
+ case PIPE_CAP_THROTTLE:
return 1;
case PIPE_CAP_TEXTURE_SHADOW_LOD:
return 0;
+ case PIPE_CAP_GL_SPIRV:
+ case PIPE_CAP_GL_SPIRV_VARIABLE_POINTERS:
+ return 0;
+
+ case PIPE_CAP_DEMOTE_TO_HELPER_INVOCATION:
+ return 0;
+
case PIPE_CAP_DMABUF:
#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD)
return 1;
@@ -379,6 +394,45 @@ u_pipe_screen_get_param_defaults(struct pipe_screen *pscreen,
return 0;
#endif
+ case PIPE_CAP_TEXTURE_SHADOW_MAP: /* Enables ARB_shadow */
+ return 1;
+
+ case PIPE_CAP_FLATSHADE:
+ case PIPE_CAP_ALPHA_TEST:
+ case PIPE_CAP_POINT_SIZE_FIXED:
+ case PIPE_CAP_TWO_SIDED_COLOR:
+ case PIPE_CAP_CLIP_PLANES:
+ return 1;
+
+ case PIPE_CAP_MAX_VERTEX_BUFFERS:
+ return 16;
+
+ case PIPE_CAP_OPENCL_INTEGER_FUNCTIONS:
+ case PIPE_CAP_INTEGER_MULTIPLY_32X16:
+ case PIPE_CAP_DRAW_INFO_START_WITH_USER_INDICES:
+ return 0;
+ case PIPE_CAP_NIR_IMAGES_AS_DEREF:
+ return 1;
+
+ case PIPE_CAP_FRONTEND_NOOP:
+ /* Enables INTEL_blackhole_render */
+ return 0;
+
+ case PIPE_CAP_PACKED_STREAM_OUTPUT:
+ return 1;
+
+ case PIPE_CAP_VIEWPORT_TRANSFORM_LOWERED:
+ case PIPE_CAP_PSIZ_CLAMPED:
+ case PIPE_CAP_MAP_UNSYNCHRONIZED_THREAD_SAFE:
+ return 0;
+
+ case PIPE_CAP_GL_BEGIN_END_BUFFER_SIZE:
+ return 512 * 1024;
+
+ case PIPE_CAP_SYSTEM_SVM:
+ case PIPE_CAP_ALPHA_TO_COVERAGE_DITHER_CONTROL:
+ return 0;
+
default:
unreachable("bad PIPE_CAP_*");
}