summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300/r300_surface.c
diff options
context:
space:
mode:
authorCorbin Simpson <[email protected]>2009-02-13 08:14:42 -0800
committerCorbin Simpson <[email protected]>2009-02-13 08:18:26 -0800
commit073a73e4c7344db46ab89862e2fbc267da34969c (patch)
tree69d3a800d7586be53f4fa3617d7e8215ec82f63c /src/gallium/drivers/r300/r300_surface.c
parentc273dfe6a28d4bb64ce167685b4053d22db5a727 (diff)
r300-gallium: Various thingies.
Add formats to framebuffer emit, fix up shader function names, make sure fragment format is emitted for r500.
Diffstat (limited to 'src/gallium/drivers/r300/r300_surface.c')
-rw-r--r--src/gallium/drivers/r300/r300_surface.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_surface.c b/src/gallium/drivers/r300/r300_surface.c
index 7a4114554b5..07837cb823d 100644
--- a/src/gallium/drivers/r300/r300_surface.c
+++ b/src/gallium/drivers/r300/r300_surface.c
@@ -235,7 +235,13 @@ static void r300_surface_fill(struct pipe_context* pipe,
r300_emit_fragment_shader(r300, &r300_passthrough_fragment_shader);
}
- BEGIN_CS(2 + (caps->has_tcl ? 23 : 2));
+ BEGIN_CS(10 + (caps->has_tcl ? 23 : 2));
+ OUT_CS_REG_SEQ(R300_US_OUT_FMT_0, 4);
+ OUT_CS(R300_C0_SEL_B | R300_C1_SEL_G | R300_C2_SEL_R | R300_C3_SEL_A);
+ OUT_CS(R300_US_OUT_FMT_UNUSED);
+ OUT_CS(R300_US_OUT_FMT_UNUSED);
+ OUT_CS(R300_US_OUT_FMT_UNUSED);
+ OUT_CS_REG(R300_US_W_FMT, R300_W_FMT_W0);
/* XXX these magic numbers should be explained when
* this becomes a cached state object */
if (caps->has_tcl) {