panfrost: Separate postfix from emits
[mesa.git] / src / gallium / drivers / panfrost / pan_blend.h
index 22993dd94a97e2024a216c0fd7bd42878811673a..df1227bfd01b50cf8329f72469e3014ae319e792 100644 (file)
@@ -66,7 +66,7 @@ struct panfrost_blend_shader_final {
 };
 
 struct panfrost_blend_equation_final {
-        struct mali_blend_equation *equation;
+        struct mali_blend_equation_packed equation;
         float constant;
 };
 
@@ -75,11 +75,14 @@ struct panfrost_blend_rt {
          * fixed-function configuration for this blend state */
 
         bool has_fixed_function;
-        struct mali_blend_equation equation;
+        struct mali_blend_equation_packed equation;
 
         /* Mask of blend color components read */
         unsigned constant_mask;
 
+        /* Properties of the blend mode */
+        bool opaque, load_dest, no_colour;
+
         /* Regardless of fixed-function blending, this is a map of pipe_format
          * to panfrost_blend_shader */
 
@@ -99,8 +102,11 @@ struct panfrost_blend_final {
         /* Set for a shader, clear for an equation */
         bool is_shader;
 
-        /* Clear if the destination needs to be loaded from the tilebuffer */
-        bool no_blending;
+        /* Set if this is the replace mode */
+        bool opaque;
+
+        /* Set if destination is loaded */
+        bool load_dest;
 
         /* Set if the colour mask is 0x0 (nothing is written) */
         bool no_colour;