fix up radeon span functions using latest r200 code from Brian,
[mesa.git] / src / mesa / drivers / dri / r200 / r200_screen.h
index 1e1f125b0d53ae86e5be7a1641d09e414cba2542..c1fa12ed5ef7de3613766e966ded7c0b83958cec 100644 (file)
@@ -1,6 +1,5 @@
-/* $XFree86$ */
-/**************************************************************************
-
+/* $XFree86: xc/lib/GL/mesa/src/drv/r200/r200_screen.h,v 1.1 2002/10/30 12:51:52 alanh Exp $ */
+/*
 Copyright (C) The Weather Channel, Inc.  2002.  All Rights Reserved.
 
 The Weather Channel (TM) funded Tungsten Graphics to develop the
@@ -37,21 +36,23 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #ifndef __R200_SCREEN_H__
 #define __R200_SCREEN_H__
 
-#ifdef GLX_DIRECT_RENDERING
-
-#include "dri_util.h"
 #include "xf86drm.h"
-#include "radeon_common.h"
-#include "radeon_sarea.h"
+#include "drm.h"
+#include "radeon_drm.h"
+#include "dri_util.h"
+#include "xmlconfig.h"
 
 typedef struct {
-   drmHandle handle;                   /* Handle to the DRM region */
+   drm_handle_t handle;                        /* Handle to the DRM region */
    drmSize size;                       /* Size of the DRM region */
    drmAddress map;                     /* Mapping of the DRM region */
 } r200RegionRec, *r200RegionPtr;
 
-#define R200_CHIPSET_R200   1
-#define R200_CHIPSET_MOBILITY 2
+
+/* chipset features */
+#define R200_CHIPSET_TCL       (1 << 0)
+#define R200_CHIPSET_REAL_R200  (1 << 1)
+#define R200_CHIPSET_YCBCR_BROKEN (1 << 2) 
 
 
 #define R200_NR_TEX_HEAPS 2
@@ -64,6 +65,7 @@ typedef struct {
    int AGPMode;
    unsigned int irq;                   /* IRQ number (0 means none) */
 
+   unsigned int fbLocation;
    unsigned int frontOffset;
    unsigned int frontPitch;
    unsigned int backOffset;
@@ -80,20 +82,27 @@ typedef struct {
 
    r200RegionRec mmio;
    r200RegionRec status;
-   r200RegionRec agpTextures;
+   r200RegionRec gartTextures;
 
    drmBufMapPtr buffers;
 
-   __volatile__ CARD32 *scratch;
+   __volatile__ u_int32_t *scratch;       /* is this used for anything? */
 
    __DRIscreenPrivate *driScreen;
    unsigned int sarea_priv_offset;
-   unsigned int agp_buffer_offset;     /* offset in card memory space */
-   unsigned int agp_texture_offset;    /* offset in card memory space */
-   unsigned int agp_base;
-
-   GLboolean drmSupportsCubeMaps;       /* need radeon kernel module >=1.7 */
+   unsigned int gart_buffer_offset;    /* offset in card memory space */
+   unsigned int gart_texture_offset;   /* offset in card memory space */
+   unsigned int gart_base;
+
+   GLboolean drmSupportsCubeMaps;       /* need radeon kernel module >= 1.7 */
+   GLboolean drmSupportsBlendColor;     /* need radeon kernel module >= 1.11 */
+   GLboolean drmSupportsTriPerf;        /* need radeon kernel module >= 1.16 */
+   GLboolean drmSupportsFragShader;     /* need radeon kernel module >= 1.18 */
+   GLboolean drmSupportsPointSprites;   /* need radeon kernel module >= 1.13 */
+   GLboolean depthHasSurface;
+
+   /* Configuration cache with default values for all contexts */
+   driOptionCache optionCache;
 } r200ScreenRec, *r200ScreenPtr;
 
-#endif
 #endif /* __R200_SCREEN_H__ */