diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/gallium/drivers/i915simple/i915_blit.c | 30 | ||||
| -rw-r--r-- | src/gallium/drivers/i915simple/i915_blit.h | 6 | ||||
| -rw-r--r-- | src/gallium/drivers/i915simple/i915_surface.c | 6 | 
3 files changed, 21 insertions, 21 deletions
| diff --git a/src/gallium/drivers/i915simple/i915_blit.c b/src/gallium/drivers/i915simple/i915_blit.c index 5a4b829210..448a4708ce 100644 --- a/src/gallium/drivers/i915simple/i915_blit.c +++ b/src/gallium/drivers/i915simple/i915_blit.c @@ -38,7 +38,7 @@  void  i915_fill_blit(struct i915_context *i915,  	       unsigned cpp, -	       short dst_pitch, +	       unsigned short dst_pitch,  	       struct pipe_buffer *dst_buffer,  	       unsigned dst_offset,  	       short x, short y,  @@ -47,15 +47,23 @@ i915_fill_blit(struct i915_context *i915,  {     unsigned BR13, CMD; + +   I915_DBG(i915, +       "%s dst:buf(%p)/%d+%d %d,%d sz:%dx%d\n", +       __FUNCTION__, +       dst_buffer, dst_pitch, dst_offset, x, y, w, h); +     switch (cpp) {     case 1:     case 2:     case 3: -      BR13 = dst_pitch | (0xF0 << 16) | (1 << 24); +      BR13 = (((int) dst_pitch) & 0xffff) | +	 (0xF0 << 16) | (1 << 24);        CMD = XY_COLOR_BLT_CMD;        break;     case 4: -      BR13 = dst_pitch | (0xF0 << 16) | (1 << 24) | (1 << 25); +      BR13 = (((int) dst_pitch) & 0xffff) | +	 (0xF0 << 16) | (1 << 24) | (1 << 25);        CMD = (XY_COLOR_BLT_CMD | XY_COLOR_BLT_WRITE_ALPHA |               XY_COLOR_BLT_WRITE_RGB);        break; @@ -63,10 +71,6 @@ i915_fill_blit(struct i915_context *i915,        return;     } -//   DBG("%s dst:buf(%p)/%d+%d %d,%d sz:%dx%d\n", -//       __FUNCTION__, dst_buffer, dst_pitch, dst_offset, x, y, w, h); - -     if (!BEGIN_BATCH(6, 1)) {        FLUSH_BATCH(NULL);        assert(BEGIN_BATCH(6, 1)); @@ -85,10 +89,10 @@ void  i915_copy_blit( struct i915_context *i915,                    unsigned do_flip,                    unsigned cpp, -                  short src_pitch, +                  unsigned short src_pitch,                    struct pipe_buffer *src_buffer,                    unsigned src_offset, -                  short dst_pitch, +                  unsigned short dst_pitch,                    struct pipe_buffer *dst_buffer,                    unsigned dst_offset,                    short src_x, short src_y, @@ -106,20 +110,16 @@ i915_copy_blit( struct i915_context *i915,         src_buffer, src_pitch, src_offset, src_x, src_y,         dst_buffer, dst_pitch, dst_offset, dst_x, dst_y, w, h); -   src_pitch *= (short) cpp; -   dst_pitch *= (short) cpp; -     switch (cpp) {     case 1:     case 2:     case 3: -      BR13 = (((int) dst_pitch) & 0xffff) |  +      BR13 = (((int) dst_pitch) & 0xffff) |  	 (0xCC << 16) | (1 << 24);        CMD = XY_SRC_COPY_BLT_CMD;        break;     case 4: -      BR13 = -         (((int) dst_pitch) & 0xffff) |  +      BR13 = (((int) dst_pitch) & 0xffff) |  	 (0xCC << 16) | (1 << 24) | (1 << 25);        CMD =           (XY_SRC_COPY_BLT_CMD | XY_SRC_COPY_BLT_WRITE_ALPHA | diff --git a/src/gallium/drivers/i915simple/i915_blit.h b/src/gallium/drivers/i915simple/i915_blit.h index 6e5b44e124..0bb3453861 100644 --- a/src/gallium/drivers/i915simple/i915_blit.h +++ b/src/gallium/drivers/i915simple/i915_blit.h @@ -33,10 +33,10 @@  extern void i915_copy_blit(struct i915_context *i915,                             unsigned do_flip,  			   unsigned cpp, -			   short src_pitch, +			   unsigned short src_pitch,  			   struct pipe_buffer *src_buffer,  			   unsigned src_offset, -			   short dst_pitch, +			   unsigned short dst_pitch,  			   struct pipe_buffer *dst_buffer,  			   unsigned dst_offset,  			   short srcx, short srcy, @@ -45,7 +45,7 @@ extern void i915_copy_blit(struct i915_context *i915,  extern void i915_fill_blit(struct i915_context *i915,  			   unsigned cpp, -			   short dst_pitch, +			   unsigned short dst_pitch,  			   struct pipe_buffer *dst_buffer,  			   unsigned dst_offset,  			   short x, short y, diff --git a/src/gallium/drivers/i915simple/i915_surface.c b/src/gallium/drivers/i915simple/i915_surface.c index 62f1926644..3b3d9217a0 100644 --- a/src/gallium/drivers/i915simple/i915_surface.c +++ b/src/gallium/drivers/i915simple/i915_surface.c @@ -79,8 +79,8 @@ i915_surface_copy(struct pipe_context *pipe,        i915_copy_blit( i915_context(pipe),                        do_flip,                        dst->block.size, -		      (short) src->stride, src->buffer, src->offset, -		      (short) dst->stride, dst->buffer, dst->offset, +		      (unsigned short) src->stride, src->buffer, src->offset, +		      (unsigned short) dst->stride, dst->buffer, dst->offset,  		      (short) srcx, (short) srcy, (short) dstx, (short) dsty, (short) width, (short) height );     }  } @@ -106,7 +106,7 @@ i915_surface_fill(struct pipe_context *pipe,        assert(dst->block.height == 1);        i915_fill_blit( i915_context(pipe),  		      dst->block.size, -		      (short) dst->stride, +		      (unsigned short) dst->stride,  		      dst->buffer, dst->offset,  		      (short) dstx, (short) dsty,  		      (short) width, (short) height, | 
