Make the i810 driver use driGetRendererString like all the other drivers.
authorIan Romanick <idr@us.ibm.com>
Thu, 18 Aug 2005 19:51:11 +0000 (19:51 +0000)
committerIan Romanick <idr@us.ibm.com>
Thu, 18 Aug 2005 19:51:11 +0000 (19:51 +0000)
The GL_RENDERER string now accurately contains the chip name.  This was only
tested on a "plain" i810 (PCI ID 8086:7121).

src/mesa/drivers/dri/i810/i810context.c

index 38f6a2b4e1842d84c272828284993390937c886f..f72842989e1989769e50e11132ab7fbb273f1fcd 100644 (file)
@@ -72,13 +72,30 @@ int I810_DEBUG = (0);
 PUBLIC const char __driConfigOptions[] = { 0 };
 const GLuint __driNConfigOptions = 0;
 
+#define DRIVER_DATE                     "20021125"
+
 static const GLubyte *i810GetString( GLcontext *ctx, GLenum name )
 {
+   static char buffer[128];
+
    switch (name) {
    case GL_VENDOR:
       return (GLubyte *)"Keith Whitwell";
-   case GL_RENDERER:
-      return (GLubyte *)"Mesa DRI I810 20021125";
+   case GL_RENDERER: {
+      i810ContextPtr imesa = I810_CONTEXT(ctx);
+      const char * chipset;
+      
+      switch (imesa->i810Screen->deviceID) {
+      case PCI_CHIP_I810:       chipset = "i810"; break;
+      case PCI_CHIP_I810_DC100: chipset = "i810 DC-100"; break;
+      case PCI_CHIP_I810_E:     chipset = "i810E"; break;
+      case PCI_CHIP_I815:       chipset = "i815"; break;
+      default:                  chipset = "Unknown i810-class Chipset"; break;
+      }
+
+      (void) driGetRendererString( buffer, chipset, DRIVER_DATE, 0 );
+      return (GLubyte *) buffer;
+   }
    default:
       return 0;
    }