summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/i965/brw_winsys.h
diff options
context:
space:
mode:
authorKeith Whitwell <keithw@vmware.com>2009-11-05 21:09:51 +0000
committerKeith Whitwell <keithw@vmware.com>2009-11-05 21:09:51 +0000
commit3763457892c2d0c654c0eca7585e4d3a863f7714 (patch)
tree0dff2177ce2d0ad0420c46b2dfe9f89cb3a4e546 /src/gallium/drivers/i965/brw_winsys.h
parent963728665aa0d48d4fdbba4276084528f221ee39 (diff)
i965g: propogate map-buffer-range semantics down to winsys
Diffstat (limited to 'src/gallium/drivers/i965/brw_winsys.h')
-rw-r--r--src/gallium/drivers/i965/brw_winsys.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/gallium/drivers/i965/brw_winsys.h b/src/gallium/drivers/i965/brw_winsys.h
index f4a1e9d8ed..e72b928b06 100644
--- a/src/gallium/drivers/i965/brw_winsys.h
+++ b/src/gallium/drivers/i965/brw_winsys.h
@@ -169,7 +169,15 @@ struct brw_winsys_screen {
*/
void *(*bo_map)(struct brw_winsys_buffer *buffer,
enum brw_buffer_data_type data_type,
- boolean write);
+ unsigned offset,
+ unsigned length,
+ boolean write,
+ boolean discard,
+ boolean flush_explicit );
+
+ void (*bo_flush_range)( struct brw_winsys_buffer *buffer,
+ unsigned offset,
+ unsigned length );
/**
* Unmap a buffer.
@@ -189,6 +197,14 @@ struct brw_winsys_screen {
void (*destroy)(struct brw_winsys_screen *iws);
};
+static INLINE void *
+bo_map_read( struct brw_winsys_screen *sws, struct brw_winsys_buffer *buf )
+{
+ return sws->bo_map( buf,
+ BRW_DATA_OTHER,
+ 0, buf->size,
+ FALSE, FALSE, FALSE );
+}
static INLINE void
bo_reference(struct brw_winsys_buffer **ptr, struct brw_winsys_buffer *buf)