svn commit: r197606 - head/sys/dev/drm
Robert Noland
rnoland at FreeBSD.org
Mon Sep 28 22:41:29 UTC 2009
Author: rnoland
Date: Mon Sep 28 22:41:28 2009
New Revision: 197606
URL: http://svn.freebsd.org/changeset/base/197606
Log:
Fix offset handling
MFC after: 1 week
Modified:
head/sys/dev/drm/radeon_cs.c
Modified: head/sys/dev/drm/radeon_cs.c
==============================================================================
--- head/sys/dev/drm/radeon_cs.c Mon Sep 28 22:40:29 2009 (r197605)
+++ head/sys/dev/drm/radeon_cs.c Mon Sep 28 22:41:28 2009 (r197606)
@@ -403,8 +403,8 @@ static inline int r600_cs_packet3(struct
DRM_ERROR("bad DRAW_INDEX\n");
break;
}
- ib_chunk->kdata[offset_dw + 1] = (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 2] = (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 1] += (offset & 0xffffffff);
+ ib_chunk->kdata[offset_dw + 2] += (upper_32_bits(offset) & 0xff);
break;
case R600_IT_DRAW_INDEX_AUTO:
//DRM_INFO("R600_IT_DRAW_INDEX_AUTO\n");
@@ -433,8 +433,8 @@ static inline int r600_cs_packet3(struct
DRM_ERROR("bad WAIT_REG_MEM\n");
break;
}
- ib_chunk->kdata[offset_dw + 2] = (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 3] = (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 2] += (offset & 0xffffffff);
+ ib_chunk->kdata[offset_dw + 3] += (upper_32_bits(offset) & 0xff);
}
if (ret)
DRM_ERROR("bad WAIT_REG_MEM\n");
@@ -469,7 +469,7 @@ static inline int r600_cs_packet3(struct
break;
}
ib_chunk->kdata[offset_dw + 2] += (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 3] |= (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 3] += (upper_32_bits(offset) & 0xff);
}
if (ret)
DRM_ERROR("bad EVENT_WRITE\n");
@@ -488,7 +488,7 @@ static inline int r600_cs_packet3(struct
break;
}
ib_chunk->kdata[offset_dw + 2] += (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + 3] |= (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + 3] += (upper_32_bits(offset) & 0xff);
break;
case R600_IT_SET_CONFIG_REG:
//DRM_INFO("R600_IT_SET_CONFIG_REG\n");
@@ -628,7 +628,7 @@ static inline int r600_cs_packet3(struct
if (ret)
break;
ib_chunk->kdata[offset_dw + (i * 7) + 0 + 2] += (offset & 0xffffffff);
- ib_chunk->kdata[offset_dw + (i * 7) + 2 + 2] |= (upper_32_bits(offset) & 0xff);
+ ib_chunk->kdata[offset_dw + (i * 7) + 2 + 2] += (upper_32_bits(offset) & 0xff);
break;
}
if (ret)
More information about the svn-src-all
mailing list