OSDN Git Service

r300: 2288 is a tcl only reg
authorDave Airlie <airlied@nx6125b.(none)>
Sun, 24 Jun 2007 07:21:26 +0000 (17:21 +1000)
committerDave Airlie <airlied@nx6125b.(none)>
Sun, 24 Jun 2007 07:21:26 +0000 (17:21 +1000)
src/mesa/drivers/dri/r300/r300_cmdbuf.c
src/mesa/drivers/dri/r300/r300_state.c

index aebc895..6adf141 100644 (file)
@@ -321,8 +321,12 @@ void r300InitCmdBuf(r300ContextPtr r300)
        r300->hw.unk221C.cmd[0] = cmdpacket0(R300_VAP_UNKNOWN_221C, 1);
        ALLOC_STATE(vap_clip, always, 5, 0);
        r300->hw.vap_clip.cmd[0] = cmdpacket0(R300_VAP_CLIP_X_0, 4);
-       ALLOC_STATE(unk2288, always, 2, 0);
-       r300->hw.unk2288.cmd[0] = cmdpacket0(R300_VAP_UNKNOWN_2288, 1);
+
+       if (has_tcl) {
+               ALLOC_STATE(unk2288, always, 2, 0);
+               r300->hw.unk2288.cmd[0] = cmdpacket0(R300_VAP_UNKNOWN_2288, 1);
+       }
+
        ALLOC_STATE(vof, always, R300_VOF_CMDSIZE, 0);
        r300->hw.vof.cmd[R300_VOF_CMD_0] =
            cmdpacket0(R300_VAP_OUTPUT_VTX_FMT_0, 2);
index e6c3946..a723c3c 100644 (file)
@@ -1862,13 +1862,15 @@ static void r300ResetHwState(r300ContextPtr r300)
        r300->hw.vap_clip.cmd[4] = r300PackFloat32(1.0); /* Y */
 
        /* XXX: Other families? */
-       switch (r300->radeon.radeonScreen->chip_family) {
-       case CHIP_FAMILY_R300:
-               r300->hw.unk2288.cmd[1] = R300_2288_R300;
-               break;
-       default:
-               r300->hw.unk2288.cmd[1] = R300_2288_RV350;
-               break;
+       if (has_tcl) {
+               switch (r300->radeon.radeonScreen->chip_family) {
+               case CHIP_FAMILY_R300:
+                       r300->hw.unk2288.cmd[1] = R300_2288_R300;
+                       break;
+               default:
+                       r300->hw.unk2288.cmd[1] = R300_2288_RV350;
+                       break;
+               }
        }
 
        r300->hw.gb_enable.cmd[1] = R300_GB_POINT_STUFF_ENABLE