From 060575bea8e98c28938d08f953864cbd46447ed8 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Thu, 17 Jan 2019 14:28:10 -0800 Subject: [PATCH] v3d: Drop maximum number of texture units down to 16. This is the GLES 3.2 minmax, and also what the closed source driver does. Avoids hitting OOMs in the CTS's dEQP-GLES3.functional.texture.units.all_units.only_cube.1. --- src/broadcom/common/v3d_limits.h | 2 +- src/gallium/drivers/v3d/v3d_context.h | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/broadcom/common/v3d_limits.h b/src/broadcom/common/v3d_limits.h index 367806dbe48..ee7a3e6bc00 100644 --- a/src/broadcom/common/v3d_limits.h +++ b/src/broadcom/common/v3d_limits.h @@ -30,7 +30,7 @@ /* Not specifically a hardware limit, just coordination between compiler and * driver. */ -#define V3D_MAX_TEXTURE_SAMPLERS 32 +#define V3D_MAX_TEXTURE_SAMPLERS 16 #define V3D_MAX_MIP_LEVELS 12 diff --git a/src/gallium/drivers/v3d/v3d_context.h b/src/gallium/drivers/v3d/v3d_context.h index 3ec4940b648..ef873237c0c 100644 --- a/src/gallium/drivers/v3d/v3d_context.h +++ b/src/gallium/drivers/v3d/v3d_context.h @@ -118,11 +118,11 @@ struct v3d_sampler_state { }; struct v3d_texture_stateobj { - struct pipe_sampler_view *textures[PIPE_MAX_SAMPLERS]; + struct pipe_sampler_view *textures[V3D_MAX_TEXTURE_SAMPLERS]; unsigned num_textures; - struct pipe_sampler_state *samplers[PIPE_MAX_SAMPLERS]; + struct pipe_sampler_state *samplers[V3D_MAX_TEXTURE_SAMPLERS]; unsigned num_samplers; - struct v3d_cl_reloc texture_state[PIPE_MAX_SAMPLERS]; + struct v3d_cl_reloc texture_state[V3D_MAX_TEXTURE_SAMPLERS]; }; struct v3d_shader_uniform_info { -- 2.30.2