fix GL_LINE_LOOP with drivers using own render pipeline stage (#12410, #13527)
[mesa.git] / src / mesa / drivers / dri / mga / mgacontext.h
index 958d06ad83dab205aea2b380c460c2117c7d45c5..2681976fc2b946e336b45910e9ed4424fbf3b041 100644 (file)
 #ifndef MGALIB_INC
 #define MGALIB_INC
 
-#include <inttypes.h>
+#include <stdint.h>
+#include "drm.h"
+#include "mga_drm.h"
 #include "dri_util.h"
 #include "mtypes.h"
 #include "xf86drm.h"
-#include "mga_drm.h"
 #include "mm.h"
 #include "colormac.h"
 #include "texmem.h"
@@ -62,6 +63,7 @@
 #define MGA_FALLBACK_STENCIL        0x20
 #define MGA_FALLBACK_DEPTH          0x40
 #define MGA_FALLBACK_BORDER_MODE    0x80
+#define MGA_FALLBACK_DISABLE        0x100
 
 
 /* Use the templated vertex formats:
@@ -256,18 +258,13 @@ struct mga_context_t {
    drmBufPtr  vertex_dma_buffer;
    drmBufPtr  iload_buffer;
 
-   /* VBI
-    */
-   GLuint vbl_seq;
-   GLuint vblank_flags;
-
    int64_t swap_ust;
    int64_t swap_missed_ust;
 
    GLuint swap_count;
    GLuint swap_missed_count;
 
-   PFNGLXGETUSTPROC get_ust;
+   uint32_t last_frame_fence;
 
    /* Drawable, cliprect and scissor information
     */
@@ -295,19 +292,12 @@ struct mga_context_t {
 
    /* Mirrors of some DRI state.
     */
-   drmContext hHWContext;
+   drm_context_t hHWContext;
    drm_hw_lock_t *driHwLock;
    int driFd;
    __DRIdrawablePrivate *driDrawable;
    __DRIdrawablePrivate *driReadable;
 
-   /**
-    * Drawable used by Mesa for software fallbacks for reading and
-    * writing.  It is set by Mesa's \c SetBuffer callback, and will always be
-    * either \c mga_context_t::driDrawable or \c mga_context_t::driReadable.
-    */
-   __DRIdrawablePrivate *mesa_drawable;
-
    __DRIscreenPrivate *driScreen;
    struct mga_screen_private_s *mgaScreen;
    drm_mga_sarea_t *sarea;