[Mesa-dev] [PATCH] radeonsi: fix broken tessellation on Carrizo and Stoney
Samuel Pitoiset
samuel.pitoiset at gmail.com
Thu Feb 23 18:54:30 UTC 2017
On 02/23/2017 07:48 PM, Marek Olšák wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99850
> Cc: 13.0 17.0 <mesa-stable at lists.freedesktop.org>
> ---
> src/gallium/drivers/radeonsi/si_state_shaders.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c
> index f615aa8..750cdd6 100644
> --- a/src/gallium/drivers/radeonsi/si_state_shaders.c
> +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c
> @@ -2305,21 +2305,23 @@ static bool si_update_spi_tmpring_size(struct si_context *sctx)
> S_0286E8_WAVESIZE(scratch_bytes_per_wave >> 10);
> if (spi_tmpring_size != sctx->spi_tmpring_size) {
> sctx->spi_tmpring_size = spi_tmpring_size;
> si_mark_atom_dirty(sctx, &sctx->scratch_state);
> }
> return true;
> }
>
> static void si_init_tess_factor_ring(struct si_context *sctx)
> {
> - bool double_offchip_buffers = sctx->b.chip_class >= CIK;
> + bool double_offchip_buffers = sctx->b.chip_class >= CIK &&
> + sctx->b.family != CHIP_CARRIZO &&
> + sctx->b.family != CHIP_STONEY;
> unsigned max_offchip_buffers_per_se = double_offchip_buffers ? 128 : 64;
> unsigned max_offchip_buffers = max_offchip_buffers_per_se *
> sctx->screen->b.info.max_se;
> unsigned offchip_granularity;
>
> switch (sctx->screen->tess_offchip_block_dw_size) {
> default:
> assert(0);
> /* fall through */
> case 8192:
>
More information about the mesa-dev
mailing list