r300g: fix texture transfers
[mesa.git] / src / gallium / drivers / r300 / r300_chipset.c
index 9b2163e44cca92c85ba6c166a3621ed3c2558323..e6dca66d4a0ed6179770944c86d9f0776a7bb815 100644 (file)
@@ -33,7 +33,7 @@
 void r300_parse_chipset(struct r300_capabilities* caps)
 {
     /* Reasonable defaults */
-    caps->num_vert_fpus = 4;
+    caps->num_vert_fpus = 2;
     caps->num_tex_units = 16;
     caps->has_tcl = debug_get_bool_option("RADEON_NO_TCL", FALSE) ? FALSE : TRUE;
     caps->is_r400 = FALSE;
@@ -47,6 +47,7 @@ void r300_parse_chipset(struct r300_capabilities* caps)
         case 0x4144:
             caps->family = CHIP_FAMILY_R300;
             caps->high_second_pipe = TRUE;
+            caps->num_vert_fpus = 4;
             break;
 
         case 0x4145:
@@ -58,6 +59,7 @@ void r300_parse_chipset(struct r300_capabilities* caps)
         case 0x4E47:
             caps->family = CHIP_FAMILY_R300;
             caps->high_second_pipe = TRUE;
+            caps->num_vert_fpus = 4;
             break;
 
         case 0x4150:
@@ -86,11 +88,13 @@ void r300_parse_chipset(struct r300_capabilities* caps)
         case 0x4E4B:
             caps->family = CHIP_FAMILY_R350;
             caps->high_second_pipe = TRUE;
+            caps->num_vert_fpus = 4;
             break;
 
         case 0x4E4A:
             caps->family = CHIP_FAMILY_R360;
             caps->high_second_pipe = TRUE;
+            caps->num_vert_fpus = 4;
             break;
 
         case 0x5460:
@@ -108,6 +112,7 @@ void r300_parse_chipset(struct r300_capabilities* caps)
         case 0x3150:
         case 0x3152:
         case 0x3154:
+        case 0x3155:
         case 0x3E50:
         case 0x3E54:
             caps->family = CHIP_FAMILY_RV380;
@@ -346,7 +351,7 @@ void r300_parse_chipset(struct r300_capabilities* caps)
 
         case 0x7280:
             caps->family = CHIP_FAMILY_RV570;
-            caps->num_vert_fpus = 5;
+            caps->num_vert_fpus = 8;
             caps->is_r500 = TRUE;
             break;
 
@@ -362,7 +367,7 @@ void r300_parse_chipset(struct r300_capabilities* caps)
         case 0x7293:
         case 0x7297:
             caps->family = CHIP_FAMILY_RV560;
-            caps->num_vert_fpus = 5;
+            caps->num_vert_fpus = 8;
             caps->is_r500 = TRUE;
             break;
 
@@ -370,4 +375,6 @@ void r300_parse_chipset(struct r300_capabilities* caps)
             fprintf(stderr, "r300: Warning: Unknown chipset 0x%x\n",
                     caps->pci_id);
     }
+
+    caps->is_rv350 = caps->family >= CHIP_FAMILY_RV350;
 }