mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
radv: Use a lower max offchip buffer count.
No clue what gets fixed by this but both radeonsi and amdvlk do it. CC: <mesa-stable@lists.freedesktop.org> Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
This commit is contained in:
parent
4dc244eb44
commit
ab64891f4c
1 changed files with 22 additions and 2 deletions
|
|
@ -1901,10 +1901,30 @@ radv_get_hs_offchip_param(struct radv_device *device, uint32_t *max_offchip_buff
|
|||
device->physical_device->rad_info.family != CHIP_CARRIZO &&
|
||||
device->physical_device->rad_info.family != CHIP_STONEY;
|
||||
unsigned max_offchip_buffers_per_se = double_offchip_buffers ? 128 : 64;
|
||||
unsigned max_offchip_buffers = max_offchip_buffers_per_se *
|
||||
device->physical_device->rad_info.max_se;
|
||||
unsigned max_offchip_buffers;
|
||||
unsigned offchip_granularity;
|
||||
unsigned hs_offchip_param;
|
||||
|
||||
/*
|
||||
* Per RadeonSI:
|
||||
* This must be one less than the maximum number due to a hw limitation.
|
||||
* Various hardware bugs in SI, CIK, and GFX9 need this.
|
||||
*
|
||||
* Per AMDVLK:
|
||||
* Vega10 should limit max_offchip_buffers to 508 (4 * 127).
|
||||
* Gfx7 should limit max_offchip_buffers to 508
|
||||
* Gfx6 should limit max_offchip_buffers to 126 (2 * 63)
|
||||
*
|
||||
* Follow AMDVLK here.
|
||||
*/
|
||||
if (device->physical_device->rad_info.family == CHIP_VEGA10 ||
|
||||
device->physical_device->rad_info.chip_class == CIK ||
|
||||
device->physical_device->rad_info.chip_class == SI)
|
||||
--max_offchip_buffers_per_se;
|
||||
|
||||
max_offchip_buffers = max_offchip_buffers_per_se *
|
||||
device->physical_device->rad_info.max_se;
|
||||
|
||||
switch (device->tess_offchip_block_dw_size) {
|
||||
default:
|
||||
assert(0);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue