radv: store the ESGS ring size as part of gfx10_ngg_info
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
This commit is contained in:
parent
7eba5666fa
commit
e7ee9a6387
|
@ -1833,6 +1833,7 @@ gfx10_get_ngg_info(const VkGraphicsPipelineCreateInfo *pCreateInfo,
|
|||
ngg->prim_amp_factor = prim_amp_factor;
|
||||
ngg->max_vert_out_per_gs_instance = max_vert_out_per_gs_instance;
|
||||
ngg->ngg_emit_size = max_gsprims * gsprim_lds_size;
|
||||
ngg->esgs_ring_size = 4 * max_esverts * esvert_lds_size;
|
||||
|
||||
if (gs_type == MESA_SHADER_GEOMETRY) {
|
||||
ngg->vgt_esgs_ring_itemsize = es_info->esgs_itemsize / 4;
|
||||
|
@ -1840,7 +1841,7 @@ gfx10_get_ngg_info(const VkGraphicsPipelineCreateInfo *pCreateInfo,
|
|||
ngg->vgt_esgs_ring_itemsize = 1;
|
||||
}
|
||||
|
||||
pipeline->graphics.esgs_ring_size = 4 * max_esverts * esvert_lds_size;
|
||||
pipeline->graphics.esgs_ring_size = ngg->esgs_ring_size;
|
||||
|
||||
assert(ngg->hw_max_esverts >= 24); /* HW limitation */
|
||||
}
|
||||
|
|
|
@ -209,6 +209,7 @@ struct gfx10_ngg_info {
|
|||
uint32_t max_out_verts;
|
||||
uint32_t prim_amp_factor;
|
||||
uint32_t vgt_esgs_ring_itemsize;
|
||||
uint32_t esgs_ring_size;
|
||||
bool max_vert_out_per_gs_instance;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue