summaryrefslogtreecommitdiff
path: root/src/r600_exa.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/r600_exa.c')
-rw-r--r--src/r600_exa.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/r600_exa.c b/src/r600_exa.c
index 61b6315c..be0a9fae 100644
--- a/src/r600_exa.c
+++ b/src/r600_exa.c
@@ -551,7 +551,10 @@ R600PrepareCopy(PixmapPtr pSrc, PixmapPtr pDst,
dst_obj.width = pDst->drawable.width;
dst_obj.height = pDst->drawable.height;
dst_obj.bpp = pDst->drawable.bitsPerPixel;
- dst_obj.domain = RADEON_GEM_DOMAIN_VRAM;
+ if (radeon_get_pixmap_shared(pDst) == TRUE) {
+ dst_obj.domain = RADEON_GEM_DOMAIN_GTT;
+ } else
+ dst_obj.domain = RADEON_GEM_DOMAIN_VRAM;
if (!R600SetAccelState(pScrn,
&src_obj,
@@ -1203,7 +1206,10 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture,
dst_obj.width = pDst->drawable.width;
dst_obj.height = pDst->drawable.height;
dst_obj.bpp = pDst->drawable.bitsPerPixel;
- dst_obj.domain = RADEON_GEM_DOMAIN_VRAM;
+ if (radeon_get_pixmap_shared(pDst) == TRUE)
+ dst_obj.domain = RADEON_GEM_DOMAIN_GTT;
+ else
+ dst_obj.domain = RADEON_GEM_DOMAIN_VRAM;
if (pMaskPicture) {
if (!pMask) {