mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-15 11:00:27 +01:00
freedreno,turnip: Make VS input attr/binding count configurable
a610 and similar models have fewer VS inputs available. Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20991>
This commit is contained in:
parent
4a43ab3019
commit
02ea3e4e10
4 changed files with 8 additions and 3 deletions
|
|
@ -173,6 +173,8 @@ struct fd_dev_info {
|
|||
/* Corresponds to HLSQ_CONTROL_1_REG::PRIMALLOCTHRESHOLD */
|
||||
uint32_t prim_alloc_threshold;
|
||||
|
||||
uint32_t vs_max_inputs_count;
|
||||
|
||||
struct {
|
||||
uint32_t PC_POWER_CNTL;
|
||||
uint32_t TPL1_DBG_ECO_CNTL;
|
||||
|
|
|
|||
|
|
@ -158,6 +158,8 @@ class A6xxGPUInfo(GPUInfo):
|
|||
|
||||
self.a6xx.prim_alloc_threshold = 0x7
|
||||
|
||||
self.a6xx.vs_max_inputs_count = 32
|
||||
|
||||
for name, val in template.items():
|
||||
if name == "magic": # handled above
|
||||
continue
|
||||
|
|
|
|||
|
|
@ -1070,8 +1070,8 @@ tu_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
|
|||
.maxDescriptorSetSampledImages = max_descriptor_set_size,
|
||||
.maxDescriptorSetStorageImages = max_descriptor_set_size,
|
||||
.maxDescriptorSetInputAttachments = MAX_RTS,
|
||||
.maxVertexInputAttributes = 32,
|
||||
.maxVertexInputBindings = 32,
|
||||
.maxVertexInputAttributes = pdevice->info->a6xx.vs_max_inputs_count,
|
||||
.maxVertexInputBindings = pdevice->info->a6xx.vs_max_inputs_count,
|
||||
.maxVertexInputAttributeOffset = 4095,
|
||||
.maxVertexInputBindingStride = 2048,
|
||||
.maxVertexOutputComponents = 128,
|
||||
|
|
|
|||
|
|
@ -671,7 +671,8 @@ fd_screen_get_shader_param(struct pipe_screen *pscreen,
|
|||
case PIPE_SHADER_CAP_MAX_INPUTS:
|
||||
if (shader == PIPE_SHADER_GEOMETRY && is_a6xx(screen))
|
||||
return 16;
|
||||
return is_a6xx(screen) ? 32 : 16;
|
||||
return is_a6xx(screen) ?
|
||||
(screen->info->a6xx.vs_max_inputs_count) : 16;
|
||||
case PIPE_SHADER_CAP_MAX_OUTPUTS:
|
||||
return is_a6xx(screen) ? 32 : 16;
|
||||
case PIPE_SHADER_CAP_MAX_TEMPS:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue