From d1cc87c0b64c2221b079015a6c3b593af83f0758 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied@redhat.com>
Date: Sat, 24 Mar 2012 13:37:16 +0000
Subject: r600g: initial r600 dual src blending support

survives piglit with no regressions on rv610/evergreen

Signed-off-by: Dave Airlie <airlied@redhat.com>
---
 src/gallium/drivers/r600/r600_pipe.h | 6 ++++++
 1 file changed, 6 insertions(+)

(limited to 'src/gallium/drivers/r600/r600_pipe.h')

diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h
index a84f9cc0822..fafc4364043 100644
--- a/src/gallium/drivers/r600/r600_pipe.h
+++ b/src/gallium/drivers/r600/r600_pipe.h
@@ -151,6 +151,7 @@ struct r600_pipe_blend {
 	struct r600_pipe_state		rstate;
 	unsigned			cb_target_mask;
 	unsigned			cb_color_control;
+	bool				dual_src_blend;
 };
 
 struct r600_pipe_dsa {
@@ -181,6 +182,7 @@ struct r600_pipe_shader {
 	unsigned	sprite_coord_enable;
 	unsigned	flatshade;
 	unsigned	pa_cl_vs_out_cntl;
+	unsigned        ps_cb_shader_mask;
 	struct pipe_stream_output_info	so;
 };
 
@@ -254,6 +256,8 @@ struct r600_context {
 	struct r600_vertex_element	*vertex_elements;
 	struct pipe_framebuffer_state	framebuffer;
 	unsigned			cb_target_mask;
+	unsigned			fb_cb_shader_mask;
+	unsigned			cb_shader_mask;
 	unsigned			cb_color_control;
 	unsigned			pa_sc_line_stipple;
 	unsigned			pa_cl_clip_cntl;
@@ -346,6 +350,8 @@ struct r600_context {
 	void			*dummy_pixel_shader;
 
 	bool			vertex_buffers_dirty;
+	boolean			dual_src_blend;
+	unsigned color0_format;
 };
 
 static INLINE void r600_emit_atom(struct r600_context *rctx, struct r600_atom *atom)
-- 
cgit v1.2.3