

Go to the source code of this file.
Data Structures | |
| struct | i915_batchbuffer |
Defines | |
| #define | BEGIN_BATCH(dwords, relocs) (i915_batchbuffer_check( i915->batch, dwords, relocs )) |
| #define | OUT_BATCH(dword) i915_batchbuffer_dword( i915->batch, dword ) |
| #define | OUT_RELOC(buf, flags, delta) i915_batchbuffer_reloc( i915->batch, buf, flags, delta ) |
| #define | FLUSH_BATCH(fence) |
Functions | |
| static boolean | i915_batchbuffer_check (struct i915_batchbuffer *batch, size_t dwords, size_t relocs) |
| static size_t | i915_batchbuffer_space (struct i915_batchbuffer *batch) |
| static void | i915_batchbuffer_dword (struct i915_batchbuffer *batch, unsigned dword) |
| static void | i915_batchbuffer_write (struct i915_batchbuffer *batch, void *data, size_t size) |
| static void | i915_batchbuffer_reloc (struct i915_batchbuffer *batch, struct pipe_buffer *buffer, size_t flags, size_t offset) |
| static void | i915_batchbuffer_flush (struct i915_batchbuffer *batch, struct pipe_fence_handle **fence) |
| #define BEGIN_BATCH | ( | dwords, | |||
| relocs | ) | (i915_batchbuffer_check( i915->batch, dwords, relocs )) |
Definition at line 102 of file i915_batch.h.
| #define FLUSH_BATCH | ( | fence | ) |
Value:
do { \ i915->winsys->batch_flush( i915->winsys, fence ); \ i915->hardware_dirty = ~0; \ } while (0)
Definition at line 111 of file i915_batch.h.
| #define OUT_BATCH | ( | dword | ) | i915_batchbuffer_dword( i915->batch, dword ) |
Definition at line 105 of file i915_batch.h.
| #define OUT_RELOC | ( | buf, | |||
| flags, | |||||
| delta | ) | i915_batchbuffer_reloc( i915->batch, buf, flags, delta ) |
Definition at line 108 of file i915_batch.h.
| static boolean i915_batchbuffer_check | ( | struct i915_batchbuffer * | batch, | |
| size_t | dwords, | |||
| size_t | relocs | |||
| ) | [static] |
TODO JB: Check relocs
Definition at line 49 of file i915_batch.h.
References i915_batchbuffer::map, i915_batchbuffer::ptr, and i915_batchbuffer::size.
| static void i915_batchbuffer_dword | ( | struct i915_batchbuffer * | batch, | |
| unsigned | dword | |||
| ) | [static] |
Definition at line 64 of file i915_batch.h.
References i915_batchbuffer_space(), and i915_batchbuffer::ptr.
00066 { 00067 if (i915_batchbuffer_space(batch) < 4) 00068 return; 00069 00070 *(unsigned *)batch->ptr = dword; 00071 batch->ptr += 4; 00072 }
| static void i915_batchbuffer_flush | ( | struct i915_batchbuffer * | batch, | |
| struct pipe_fence_handle ** | fence | |||
| ) | [static] |
Definition at line 96 of file i915_batch.h.
References i915_winsys::batch_flush, and i915_batchbuffer::winsys.
00098 { 00099 batch->winsys->batch_flush( batch->winsys, fence ); 00100 }
| static void i915_batchbuffer_reloc | ( | struct i915_batchbuffer * | batch, | |
| struct pipe_buffer * | buffer, | |||
| size_t | flags, | |||
| size_t | offset | |||
| ) | [static] |
Definition at line 87 of file i915_batch.h.
References i915_winsys::batch_reloc, and i915_batchbuffer::winsys.
00091 { 00092 batch->winsys->batch_reloc( batch->winsys, buffer, flags, offset ); 00093 }
| static size_t i915_batchbuffer_space | ( | struct i915_batchbuffer * | batch | ) | [static] |
Definition at line 58 of file i915_batch.h.
References i915_batchbuffer::map, i915_batchbuffer::ptr, and i915_batchbuffer::size.
| static void i915_batchbuffer_write | ( | struct i915_batchbuffer * | batch, | |
| void * | data, | |||
| size_t | size | |||
| ) | [static] |
Definition at line 75 of file i915_batch.h.
References i915_batchbuffer_space(), and i915_batchbuffer::ptr.
00078 { 00079 if (i915_batchbuffer_space(batch) < size) 00080 return; 00081 00082 memcpy(data, batch->ptr, size); 00083 batch->ptr += size; 00084 }
1.5.4