summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/panfrost/pan_blend_cso.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/panfrost/pan_blend_cso.c')
-rw-r--r--src/gallium/drivers/panfrost/pan_blend_cso.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/gallium/drivers/panfrost/pan_blend_cso.c b/src/gallium/drivers/panfrost/pan_blend_cso.c
index 94f229b620d..8b4635ca286 100644
--- a/src/gallium/drivers/panfrost/pan_blend_cso.c
+++ b/src/gallium/drivers/panfrost/pan_blend_cso.c
@@ -107,7 +107,6 @@ panfrost_create_blend_state(struct pipe_context *pipe,
so->base = *blend;
/* TODO: The following features are not yet implemented */
- assert(!blend->logicop_enable);
assert(!blend->alpha_to_coverage);
assert(!blend->alpha_to_one);
@@ -119,15 +118,17 @@ panfrost_create_blend_state(struct pipe_context *pipe,
/* Without indep blending, the first RT settings replicate */
- unsigned g =
- blend->independent_blend_enable ? c : 0;
+ if (!blend->logicop_enable) {
+ unsigned g =
+ blend->independent_blend_enable ? c : 0;
- rt->has_fixed_function =
- panfrost_make_fixed_blend_mode(
- &blend->rt[g],
- &rt->equation,
- &rt->constant_mask,
- blend->rt[g].colormask);
+ rt->has_fixed_function =
+ panfrost_make_fixed_blend_mode(
+ &blend->rt[g],
+ &rt->equation,
+ &rt->constant_mask,
+ blend->rt[g].colormask);
+ }
/* Regardless if that works, we also need to initialize
* the blend shaders */