Mesa (master): a2xx: set constant blend color

Ilia Mirkin imirkin at kemper.freedesktop.org
Fri Aug 25 04:21:32 UTC 2017


Module: Mesa
Branch: master
Commit: f3bde890cde869d8ba4280186a4de6dd677b387a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f3bde890cde869d8ba4280186a4de6dd677b387a

Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Fri Aug 25 00:03:46 2017 -0400

a2xx: set constant blend color

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>

---

 src/gallium/drivers/freedreno/a2xx/fd2_emit.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/gallium/drivers/freedreno/a2xx/fd2_emit.c b/src/gallium/drivers/freedreno/a2xx/fd2_emit.c
index 50eee63636..44f9b55f1f 100644
--- a/src/gallium/drivers/freedreno/a2xx/fd2_emit.c
+++ b/src/gallium/drivers/freedreno/a2xx/fd2_emit.c
@@ -309,6 +309,15 @@ fd2_emit_state(struct fd_context *ctx, const enum fd_dirty_3d_state dirty)
 		OUT_RING(ring, blend->rb_colormask);
 	}
 
+	if (dirty & FD_DIRTY_BLEND_COLOR) {
+		OUT_PKT3(ring, CP_SET_CONSTANT, 5);
+		OUT_RING(ring, CP_REG(REG_A2XX_RB_BLEND_RED));
+		OUT_RING(ring, float_to_ubyte(ctx->blend_color.color[0]));
+		OUT_RING(ring, float_to_ubyte(ctx->blend_color.color[1]));
+		OUT_RING(ring, float_to_ubyte(ctx->blend_color.color[2]));
+		OUT_RING(ring, float_to_ubyte(ctx->blend_color.color[3]));
+	}
+
 	if (dirty & (FD_DIRTY_TEX | FD_DIRTY_PROG))
 		emit_textures(ring, ctx);
 }




More information about the mesa-commit mailing list