projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'mesa_7_6_branch' into mesa_7_7_branch
[mesa.git]
/
src
/
gallium
/
winsys
/
drm
/
intel
/
gem
/
intel_drm_buffer.c
diff --git
a/src/gallium/winsys/drm/intel/gem/intel_drm_buffer.c
b/src/gallium/winsys/drm/intel/gem/intel_drm_buffer.c
index 0030f915a367282d139d60bf5b4236ec888c5241..ac4dd6e00e94ca2e8844131cffdf70a5237b3570 100644
(file)
--- a/
src/gallium/winsys/drm/intel/gem/intel_drm_buffer.c
+++ b/
src/gallium/winsys/drm/intel/gem/intel_drm_buffer.c
@@
-58,11
+58,17
@@
intel_drm_buffer_set_fence_reg(struct intel_winsys *iws,
unsigned stride,
enum intel_buffer_tile tile)
{
unsigned stride,
enum intel_buffer_tile tile)
{
+ struct intel_drm_buffer *buf = intel_drm_buffer(buffer);
assert(I915_TILING_NONE == INTEL_TILE_NONE);
assert(I915_TILING_X == INTEL_TILE_X);
assert(I915_TILING_Y == INTEL_TILE_Y);
assert(I915_TILING_NONE == INTEL_TILE_NONE);
assert(I915_TILING_X == INTEL_TILE_X);
assert(I915_TILING_Y == INTEL_TILE_Y);
- return drm_intel_bo_set_tiling(intel_bo(buffer), &tile, stride);
+ if (tile != INTEL_TILE_NONE) {
+ assert(buf->map_count == 0);
+ buf->map_gtt = TRUE;
+ }
+
+ return drm_intel_bo_set_tiling(buf->bo, &tile, stride);
}
static void *
}
static void *
@@
-113,9
+119,9
@@
intel_drm_buffer_unmap(struct intel_winsys *iws,
static int
intel_drm_buffer_write(struct intel_winsys *iws,
struct intel_buffer *buffer,
static int
intel_drm_buffer_write(struct intel_winsys *iws,
struct intel_buffer *buffer,
-
const void *data
,
+
size_t offset
,
size_t size,
size_t size,
-
size_t offset
)
+
const void *data
)
{
struct intel_drm_buffer *buf = intel_drm_buffer(buffer);
{
struct intel_drm_buffer *buf = intel_drm_buffer(buffer);