i965g: update disassembler code from classic.
[mesa.git] / src / gallium / drivers / i965 / brw_winsys.h
index 2f4706771631a68b996158f43806c3aa80f34e10..038f6f788a039698515b84f1be55cee54bbcd5f3 100644 (file)
@@ -28,7 +28,7 @@
 
 #include "pipe/p_compiler.h"
 #include "pipe/p_defines.h"
-#include "pipe/p_refcnt.h"
+#include "util/u_inlines.h"
 
 struct brw_winsys;
 struct pipe_fence_handle;
@@ -147,7 +147,8 @@ static INLINE void make_reloc(struct brw_winsys_reloc *reloc,
 
 struct brw_winsys_screen {
 
-
+   unsigned pci_id;
+   int gen;
    /**
     * Buffer functions.
     */
@@ -162,6 +163,16 @@ struct brw_winsys_screen {
                                unsigned alignment,
                                struct brw_winsys_buffer **bo_out);
 
+   enum pipe_error (*bo_from_handle)(struct brw_winsys_screen *sws,
+                                     struct winsys_handle *whandle,
+                                     unsigned *stride,
+                                     unsigned *tiling,
+                                     struct brw_winsys_buffer **bo_out);
+
+   enum pipe_error (*bo_get_handle)(struct brw_winsys_buffer *buffer,
+                                    struct winsys_handle *whandle,
+                                    unsigned stride);
+
    /* Destroy a buffer when our refcount goes to zero:
     */
    void (*bo_destroy)(struct brw_winsys_buffer *buffer);
@@ -244,42 +255,12 @@ bo_reference(struct brw_winsys_buffer **ptr, struct brw_winsys_buffer *buf)
 {
    struct brw_winsys_buffer *old_buf = *ptr;
 
-   if (pipe_reference((struct pipe_reference **)ptr, &buf->reference))
+   if (pipe_reference(&(*ptr)->reference, &buf->reference))
       old_buf->sws->bo_destroy(old_buf);
-}
-
-
-/**
- * Create brw pipe_screen.
- */
-struct pipe_screen *brw_create_screen(struct brw_winsys_screen *iws, unsigned pci_id);
 
-/**
- * Create a brw pipe_context.
- */
-struct pipe_context *brw_create_context(struct pipe_screen *screen);
-
-/**
- * Get the brw_winsys buffer backing the texture.
- *
- * TODO UGLY
- */
-struct pipe_texture;
-boolean brw_texture_get_winsys_buffer(struct pipe_texture *texture,
-                                      struct brw_winsys_buffer **buffer,
-                                      unsigned *stride);
+   *ptr = buf;
+}
 
-/**
- * Wrap a brw_winsys buffer with a texture blanket.
- *
- * TODO UGLY
- */
-struct pipe_texture * 
-brw_texture_blanket_winsys_buffer(struct pipe_screen *screen,
-                                  const struct pipe_texture *template,
-                                  unsigned pitch,
-                                 unsigned tiling,
-                                  struct brw_winsys_buffer *buffer);
 
 
 /*************************************************************************
@@ -301,7 +282,7 @@ void brw_dump_data( unsigned pci_id,
                    enum brw_buffer_data_type data_type,
                    unsigned offset,
                    const void *data,
-                   size_t size );
+                   size_t size, int gen );
 
 
 #endif