r300g: various other cleanups
[mesa.git] / src / gallium / drivers / r300 / r300_winsys.h
index 1e6d43bea31a02d2246b78ada3a413992400d06e..9c348d911581d05a9dadb1067e0609c10fe01129 100644 (file)
 #include "pipe/p_defines.h"
 #include "pipe/p_state.h"
 
-struct r300_winsys_screen;
-
-/* Creates a new r300 screen. */
-struct pipe_screen* r300_create_screen(struct r300_winsys_screen *rws);
+#include "r300_defines.h"
 
 struct r300_winsys_buffer;
 
-
-boolean r300_get_texture_buffer(struct pipe_screen* screen,
-                                struct pipe_texture* texture,
-                                struct r300_winsys_buffer** buffer,
-                                unsigned *stride);
-
 enum r300_value_id {
     R300_VID_PCI_ID,
     R300_VID_GB_PIPES,
     R300_VID_Z_PIPES,
+    R300_VID_SQUARE_TILING_SUPPORT,
+    R300_VID_TEX3D_MIP_BUG,
 };
 
 struct r300_winsys_screen {
@@ -97,7 +90,7 @@ struct r300_winsys_screen {
                               unsigned offset,
                               unsigned length);
 
-    /* Add a pipe_buffer to the list of buffer objects to validate. */
+    /* Add a pipe_resource to the list of buffer objects to validate. */
     boolean (*add_buffer)(struct r300_winsys_screen *winsys,
                           struct r300_winsys_buffer *buf,
                           uint32_t rd,
@@ -143,11 +136,16 @@ struct r300_winsys_screen {
 
     void (*reset_bos)(struct r300_winsys_screen *winsys);
 
+    void (*buffer_get_tiling)(struct r300_winsys_screen *winsys,
+                              struct r300_winsys_buffer *buffer,
+                              enum r300_buffer_tiling *microtiled,
+                              enum r300_buffer_tiling *macrotiled);
+
     void (*buffer_set_tiling)(struct r300_winsys_screen *winsys,
                               struct r300_winsys_buffer *buffer,
                               uint32_t pitch,
-                              boolean microtiled,
-                              boolean macrotiled);
+                              enum r300_buffer_tiling microtiled,
+                              enum r300_buffer_tiling macrotiled);
 
     uint32_t (*get_value)(struct r300_winsys_screen *winsys,
                          enum r300_value_id vid);
@@ -170,4 +168,7 @@ struct r300_winsys_screen {
 struct r300_winsys_screen *
 r300_winsys_screen(struct pipe_screen *screen);
 
+/* Creates a new r300 screen. */
+struct pipe_screen* r300_create_screen(struct r300_winsys_screen *rws);
+
 #endif /* R300_WINSYS_H */