aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/panfrost/pan_context.c
diff options
context:
space:
mode:
authorTomeu Vizoso <[email protected]>2019-11-05 15:31:42 +0100
committerTomeu Vizoso <[email protected]>2019-11-06 16:18:46 +0100
commit8e1ae5fa14c87f0c3eb0ae2b2f850a97feabf2f7 (patch)
tree7ecf59408ed4d40863bb483fee4f5e5314e0b689 /src/gallium/drivers/panfrost/pan_context.c
parentafeda06062fef3542ca792ace6a15dc78371658b (diff)
panfrost: Decode blend shaders for SFBD
Also set MALI_HAS_BLEND_SHADER as needed. Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium/drivers/panfrost/pan_context.c')
-rw-r--r--src/gallium/drivers/panfrost/pan_context.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c
index e8cedb96187..b7b77715fc8 100644
--- a/src/gallium/drivers/panfrost/pan_context.c
+++ b/src/gallium/drivers/panfrost/pan_context.c
@@ -1047,7 +1047,9 @@ panfrost_emit_for_draw(struct panfrost_context *ctx, bool with_vertex_data)
* additionally need to signal CAN_DISCARD for nontrivial blend
* modes (so we're able to read back the destination buffer) */
- if (!blend[0].is_shader) {
+ if (blend[0].is_shader) {
+ ctx->fragment_shader_core.unknown2_3 |= MALI_HAS_BLEND_SHADER;
+ } else {
ctx->fragment_shader_core.blend.equation =
*blend[0].equation.equation;
ctx->fragment_shader_core.blend.constant =