r300: Add more capabilities.
authorCorbin Simpson <MostAwesomeDude@gmail.com>
Sat, 24 Jan 2009 12:08:33 +0000 (04:08 -0800)
committerCorbin Simpson <MostAwesomeDude@gmail.com>
Mon, 2 Feb 2009 07:30:28 +0000 (23:30 -0800)
src/gallium/drivers/r300/r300_screen.c

index 25ddb0e8c684a38a5d81cb3a0b005f4c51139ec5..6de97a79e163e64c0df7d1648a849801edcd51b9 100644 (file)
@@ -80,9 +80,6 @@ static int r300_get_param(struct pipe_screen* pscreen, int param)
         case PIPE_CAP_NPOT_TEXTURES:
             /* IN THEORY */
             return 0;
-        case PIPE_CAP_S3TC:
-            /* IN THEORY */
-            return 0;
         case PIPE_CAP_TWO_SIDED_STENCIL:
             /* IN THEORY */
             /* if (r300screen->is_r500) {
@@ -91,21 +88,27 @@ static int r300_get_param(struct pipe_screen* pscreen, int param)
              * return 0;
              * } */
             return 0;
+        case PIPE_CAP_GLSL:
+            /* IN THEORY */
+            return 0;
+        case PIPE_CAP_S3TC:
+            /* IN THEORY */
+            return 0;
         case PIPE_CAP_ANISOTROPIC_FILTER:
             /* IN THEORY */
             return 0;
         case PIPE_CAP_POINT_SPRITE:
             /* IN THEORY */
             return 0;
+        case PIPE_CAP_MAX_RENDER_TARGETS:
+            /* XXX 4 eventually */
+            return 1;
         case PIPE_CAP_OCCLUSION_QUERY:
             /* IN THEORY */
             return 0;
         case PIPE_CAP_TEXTURE_SHADOW_MAP:
             /* IN THEORY */
             return 0;
-        case PIPE_CAP_GLSL:
-            /* IN THEORY */
-            return 0;
         case PIPE_CAP_MAX_TEXTURE_2D_LEVELS:
             if (r300screen->caps->is_r500) {
                 /* 13 == 4096x4096 */
@@ -135,9 +138,13 @@ static int r300_get_param(struct pipe_screen* pscreen, int param)
                 /* 12 == 2048x2048 */
                 return 12;
             }
-        case PIPE_CAP_MAX_RENDER_TARGETS:
-            /* XXX 4 eventually */
+        case PIPE_CAP_TEXTURE_MIRROR_CLAMP:
+            return 1;
+        case PIPE_CAP_TEXTURE_MIRROR_REPEAT:
             return 1;
+        case PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS:
+            /* XXX guessing */
+            return 2;
         default:
             debug_printf("r300: Implementation error: Bad param %d\n",
                 param);