Mesa (staging/20.1): etnaviv: fix SAMP_ANISOTROPY register value

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue May 5 16:57:07 UTC 2020


Module: Mesa
Branch: staging/20.1
Commit: 00001525f5fa85d5f212d91321d1c353a4fb3aaf
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=00001525f5fa85d5f212d91321d1c353a4fb3aaf

Author: Christian Gmeiner <christian.gmeiner at gmail.com>
Date:   Sun May  3 08:54:47 2020 +0200

etnaviv: fix SAMP_ANISOTROPY register value

This caused some serious problems like shredded output, ~1fps and GPU hungs.

Fixes: 7aaa0e59086 ("etnaviv: add anisotropic filter support")
Reported-by: Lukas F. Hartmann <lukas at mntmn.com>
Tested-by: Lukas F. Hartmann <lukas at mntmn.com>
Signed-off-by: Christian Gmeiner <christian.gmeiner at gmail.com>
Reviewed-by: Lucas Stach <l.stach at pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4872>
(cherry picked from commit b38e51bd969e212cce90998bc283049e74f9b33c)

---

 .pick_status.json                                  | 2 +-
 src/gallium/drivers/etnaviv/etnaviv_texture_desc.c | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index f44f8a8705f..00201b701f6 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -445,7 +445,7 @@
         "description": "etnaviv: fix SAMP_ANISOTROPY register value",
         "nominated": true,
         "nomination_type": 1,
-        "resolution": 0,
+        "resolution": 1,
         "master_sha": null,
         "because_sha": "7aaa0e59086fa2bf9c5fa7db2774cb2aa32f95b9"
     },
diff --git a/src/gallium/drivers/etnaviv/etnaviv_texture_desc.c b/src/gallium/drivers/etnaviv/etnaviv_texture_desc.c
index efa0cd67147..bca73d65c14 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_texture_desc.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_texture_desc.c
@@ -109,8 +109,7 @@ etna_create_sampler_state_desc(struct pipe_context *pipe,
    cs->SAMP_LOD_BIAS =
       VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_BIAS(etna_float_to_fixp88(ss->lod_bias)) |
       COND(ss->lod_bias != 0.0, VIVS_NTE_DESCRIPTOR_SAMP_LOD_BIAS_ENABLE);
-   cs->SAMP_ANISOTROPY =
-      VIVS_NTE_DESCRIPTOR_SAMP_ANISOTROPY(COND(ansio, etna_log2_fixp88(ss->max_anisotropy)));
+   cs->SAMP_ANISOTROPY = COND(ansio, etna_log2_fixp88(ss->max_anisotropy));
 
    return cs;
 }



More information about the mesa-commit mailing list