mirror of
https://gitlab.freedesktop.org/mesa/drm.git
synced 2025-12-24 14:50:11 +01:00
Merge from trunk to bsd-3-0-0-branch.
This commit is contained in:
parent
a7dfacf68c
commit
c44982e159
4 changed files with 14 additions and 8 deletions
|
|
@ -458,6 +458,7 @@ extern int radeon_cp_flip( DRM_IOCTL_ARGS );
|
|||
# define RADEON_CNTL_HOSTDATA_BLT 0x00009400
|
||||
# define RADEON_CNTL_PAINT_MULTI 0x00009A00
|
||||
# define RADEON_CNTL_BITBLT_MULTI 0x00009B00
|
||||
# define RADEON_CNTL_SET_SCISSORS 0xC0001E00
|
||||
|
||||
#define RADEON_CP_PACKET_MASK 0xC0000000
|
||||
#define RADEON_CP_PACKET_COUNT_MASK 0x3fff0000
|
||||
|
|
@ -712,7 +713,8 @@ do { \
|
|||
} while (0)
|
||||
|
||||
#define COMMIT_RING() do { \
|
||||
RADEON_WRITE( RADEON_CP_RB_WPTR, dev_priv->ring.tail ); \
|
||||
radeon_flush_write_combine(); \
|
||||
RADEON_WRITE( RADEON_CP_RB_WPTR, dev_priv->ring.tail ); \
|
||||
} while (0)
|
||||
|
||||
#define OUT_RING( x ) do { \
|
||||
|
|
|
|||
|
|
@ -46,10 +46,9 @@ static __inline__ void radeon_emit_clip_rect( drm_radeon_private_t *dev_priv,
|
|||
DRM_DEBUG( " box: x1=%d y1=%d x2=%d y2=%d\n",
|
||||
box->x1, box->y1, box->x2, box->y2 );
|
||||
|
||||
BEGIN_RING( 4 );
|
||||
OUT_RING( CP_PACKET0( RADEON_RE_TOP_LEFT, 0 ) );
|
||||
BEGIN_RING( 3 );
|
||||
OUT_RING( CP_PACKET3( RADEON_CNTL_SET_SCISSORS, 1 ));
|
||||
OUT_RING( (box->y1 << 16) | box->x1 );
|
||||
OUT_RING( CP_PACKET0( RADEON_RE_WIDTH_HEIGHT, 0 ) );
|
||||
/* OUT_RING( ((box->y2 - 1) << 16) | (box->x2 - 1) );*/
|
||||
OUT_RING( (box->y2 << 16) | box->x2 );
|
||||
ADVANCE_RING();
|
||||
|
|
@ -1083,6 +1082,7 @@ static int radeon_do_init_pageflip( drm_device_t *dev )
|
|||
|
||||
dev_priv->page_flipping = 1;
|
||||
dev_priv->current_page = 0;
|
||||
dev_priv->sarea_priv->pfCurrentPage = dev_priv->current_page;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1097,6 +1097,7 @@ int radeon_do_cleanup_pageflip( drm_device_t *dev )
|
|||
|
||||
dev_priv->page_flipping = 0;
|
||||
dev_priv->current_page = 0;
|
||||
dev_priv->sarea_priv->pfCurrentPage = dev_priv->current_page;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -458,6 +458,7 @@ extern int radeon_cp_flip( DRM_IOCTL_ARGS );
|
|||
# define RADEON_CNTL_HOSTDATA_BLT 0x00009400
|
||||
# define RADEON_CNTL_PAINT_MULTI 0x00009A00
|
||||
# define RADEON_CNTL_BITBLT_MULTI 0x00009B00
|
||||
# define RADEON_CNTL_SET_SCISSORS 0xC0001E00
|
||||
|
||||
#define RADEON_CP_PACKET_MASK 0xC0000000
|
||||
#define RADEON_CP_PACKET_COUNT_MASK 0x3fff0000
|
||||
|
|
@ -712,7 +713,8 @@ do { \
|
|||
} while (0)
|
||||
|
||||
#define COMMIT_RING() do { \
|
||||
RADEON_WRITE( RADEON_CP_RB_WPTR, dev_priv->ring.tail ); \
|
||||
radeon_flush_write_combine(); \
|
||||
RADEON_WRITE( RADEON_CP_RB_WPTR, dev_priv->ring.tail ); \
|
||||
} while (0)
|
||||
|
||||
#define OUT_RING( x ) do { \
|
||||
|
|
|
|||
|
|
@ -46,10 +46,9 @@ static __inline__ void radeon_emit_clip_rect( drm_radeon_private_t *dev_priv,
|
|||
DRM_DEBUG( " box: x1=%d y1=%d x2=%d y2=%d\n",
|
||||
box->x1, box->y1, box->x2, box->y2 );
|
||||
|
||||
BEGIN_RING( 4 );
|
||||
OUT_RING( CP_PACKET0( RADEON_RE_TOP_LEFT, 0 ) );
|
||||
BEGIN_RING( 3 );
|
||||
OUT_RING( CP_PACKET3( RADEON_CNTL_SET_SCISSORS, 1 ));
|
||||
OUT_RING( (box->y1 << 16) | box->x1 );
|
||||
OUT_RING( CP_PACKET0( RADEON_RE_WIDTH_HEIGHT, 0 ) );
|
||||
/* OUT_RING( ((box->y2 - 1) << 16) | (box->x2 - 1) );*/
|
||||
OUT_RING( (box->y2 << 16) | box->x2 );
|
||||
ADVANCE_RING();
|
||||
|
|
@ -1083,6 +1082,7 @@ static int radeon_do_init_pageflip( drm_device_t *dev )
|
|||
|
||||
dev_priv->page_flipping = 1;
|
||||
dev_priv->current_page = 0;
|
||||
dev_priv->sarea_priv->pfCurrentPage = dev_priv->current_page;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1097,6 +1097,7 @@ int radeon_do_cleanup_pageflip( drm_device_t *dev )
|
|||
|
||||
dev_priv->page_flipping = 0;
|
||||
dev_priv->current_page = 0;
|
||||
dev_priv->sarea_priv->pfCurrentPage = dev_priv->current_page;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue