diff options
author | Arnaud Patard <[email protected]> | 2019-07-23 06:42:00 -0700 |
---|---|---|
committer | Alyssa Rosenzweig <[email protected]> | 2019-07-23 08:04:42 -0700 |
commit | 397f9ba69fcaef17de5c8f639957743890fa7805 (patch) | |
tree | c2e5db57fa0df1565706087d09aec2a042aff788 /src/gallium | |
parent | 83a1d5544a78b6f741523aa1689ab0c0941d549b (diff) |
panfrost: Fix T6XX Support
While testing kmscube with mesa master, it turns out that kmscube is not
working anymore. After bisecting, commit
5a7688fdecd76c7d9cd87f6f6c93eb32870a2146 is the culprit. A short trial
and error session allowed to find the removed bit of code making kmscube
working again.
This patch adds it back.
Fixes: 5a7688fde ("panfrost: Use 64-bit descriptors globally")
v2: Add comment pointing out this is magic. [Alyssa, trivial]
Signed-off-by: Arnaud Patard <[email protected]>
Reviewed-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/panfrost/pan_context.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c index 20da92a230b..2f19113e703 100644 --- a/src/gallium/drivers/panfrost/pan_context.c +++ b/src/gallium/drivers/panfrost/pan_context.c @@ -453,7 +453,15 @@ panfrost_default_shader_backend(struct panfrost_context *ctx) .unknown2_4 = MALI_NO_MSAA | 0x4e0, }; - /* unknown2_4 has 0x10 bit set on 32-bit T6XX */ + /* unknown2_4 has 0x10 bit set on T6XX. We don't know why this is + * required (independent of 32-bit/64-bit descriptors), or why it's not + * used on later GPU revisions. Otherwise, all shader jobs fault on + * these earlier chips (perhaps this is a chicken bit of some kind). + * More investigation is needed. */ + + if (ctx->is_t6xx) { + shader.unknown2_4 |= 0x10; + } struct pipe_stencil_state default_stencil = { .enabled = 0, |