summaryrefslogtreecommitdiff
path: root/src/radeon.h
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2012-09-03 12:56:56 +1000
committerDave Airlie <airlied@redhat.com>2012-09-03 12:58:38 +1000
commitf7502a11c8ef9c453ceb40d26109977116df88c2 (patch)
treefeb7da4c10f61568566edd5061864c45f8f8a790 /src/radeon.h
parentf71139a2afe8fffb628331402bf829a6d67c9fff (diff)
radeon: add shared support to pixmaps.
this just adds the interface and shared support to the pixmap. Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'src/radeon.h')
-rw-r--r--src/radeon.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/radeon.h b/src/radeon.h
index 2f05249e..2eac38e5 100644
--- a/src/radeon.h
+++ b/src/radeon.h
@@ -249,6 +249,7 @@ struct radeon_exa_pixmap_priv {
uint32_t tiling_flags;
struct radeon_surface surface;
Bool bo_mapped;
+ Bool shared;
};
#define RADEON_2D_EXA_COPY 1
@@ -266,6 +267,7 @@ struct radeon_2d_state {
uint32_t dp_src_frgd_clr;
uint32_t dp_src_bkgd_clr;
uint32_t default_sc_bottom_right;
+ uint32_t dst_domain;
struct radeon_bo *dst_bo;
struct radeon_bo *src_bo;
};
@@ -624,6 +626,23 @@ static inline struct radeon_bo *radeon_get_pixmap_bo(PixmapPtr pPix)
return NULL;
}
+static inline Bool radeon_get_pixmap_shared(PixmapPtr pPix)
+{
+#ifdef USE_GLAMOR
+ RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(pPix->drawable.pScreen));
+
+ if (info->use_glamor) {
+ ErrorF("glamor sharing todo\n");
+ return FALSE:
+ } else
+#endif
+ {
+ struct radeon_exa_pixmap_priv *driver_priv;
+ driver_priv = exaGetPixmapDriverPrivate(pPix);
+ return driver_priv->shared;
+ }
+ return FALSE;
+}
#define CP_PACKET0(reg, n) \
(RADEON_CP_PACKET0 | ((n) << 16) | ((reg) >> 2))