summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r300_ioctl.c
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2008-05-17 10:27:11 +1000
committerDave Airlie <airlied@redhat.com>2008-05-17 10:29:52 +1000
commit791c95230cd399eaa5892d6e13d3ce08e6167e0c (patch)
treec04a270c4bdf288ae246e3144254de482e2831e9 /src/mesa/drivers/dri/r300/r300_ioctl.c
parentd6333af7e9b01d0e878ddbb92b5f972c67f5350f (diff)
r500: write out the correct FP registers
Diffstat (limited to 'src/mesa/drivers/dri/r300/r300_ioctl.c')
-rw-r--r--src/mesa/drivers/dri/r300/r300_ioctl.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_ioctl.c b/src/mesa/drivers/dri/r300/r300_ioctl.c
index b6d600d40a..9aa1120966 100644
--- a/src/mesa/drivers/dri/r300/r300_ioctl.c
+++ b/src/mesa/drivers/dri/r300/r300_ioctl.c
@@ -357,9 +357,14 @@ static void r300EmitClearState(GLcontext * ctx)
reg_start(R300_US_ALU_ALPHA_ADDR_0, 0);
e32(FP_SELA(0, NO, W, FP_TMP(0), 0, 0));
} else {
- R300_STATECHANGE(r300, fp);
- reg_start(R500_US_PIXSIZE, 0);
- e32(0x2);
+ R300_STATECHANGE(r300, fp);
+ reg_start(R500_US_CONFIG, 1);
+ e32(R500_ZERO_TIMES_ANYTHING_EQUALS_ZERO);
+ e32(0x0);
+ reg_start(R500_US_CODE_ADDR, 2);
+ e32(R500_US_CODE_START_ADDR(0) | R500_US_CODE_END_ADDR(1));
+ e32(R500_US_CODE_RANGE_ADDR(0) | R500_US_CODE_RANGE_SIZE(1));
+ e32(R500_US_CODE_OFFSET_ADDR(0));
R300_STATECHANGE(r300, r500fp);
r500fp_start_fragment(0, 6);