summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Vorobiov <s.vorobiov@samsung.com>2014-02-10 19:02:51 +0400
committerQuanxian Wang <quanxian.wang@intel.com>2014-10-15 12:06:15 +0800
commit8e09e3c9aba978e7a49874db1a254c027d3df67f (patch)
tree1ff3eba33397af3d5b99c4c32606d7fd38a8fd6f
parent4b74b5b5d16011e5475e8f7c7ac96972243028f5 (diff)
downloadlibdrm-8e09e3c9aba978e7a49874db1a254c027d3df67f.tar.gz
libdrm-8e09e3c9aba978e7a49874db1a254c027d3df67f.tar.bz2
libdrm-8e09e3c9aba978e7a49874db1a254c027d3df67f.zip
libdrm_vigs: Scanout flag added to surfaces
Change-Id: Ib6f96d2542c3df0b78f7ef1b610bcc3fa0b678d6 Signed-off-by: Stanislav Vorobiov <s.vorobiov@samsung.com>
-rw-r--r--include/drm/vigs_drm.h4
-rw-r--r--vigs/Makefile.am2
-rw-r--r--vigs/vigs.c4
-rw-r--r--vigs/vigs.h2
4 files changed, 10 insertions, 2 deletions
diff --git a/include/drm/vigs_drm.h b/include/drm/vigs_drm.h
index 3a11ab21..3eba112e 100644
--- a/include/drm/vigs_drm.h
+++ b/include/drm/vigs_drm.h
@@ -33,7 +33,7 @@
/*
* Bump this whenever driver interface changes.
*/
-#define DRM_VIGS_DRIVER_VERSION 10
+#define DRM_VIGS_DRIVER_VERSION 11
/*
* Surface access flags.
@@ -53,6 +53,7 @@ struct drm_vigs_create_surface
uint32_t height;
uint32_t stride;
uint32_t format;
+ int scanout;
uint32_t handle;
uint32_t size;
uint32_t id;
@@ -83,6 +84,7 @@ struct drm_vigs_surface_info
uint32_t height;
uint32_t stride;
uint32_t format;
+ int scanout;
uint32_t size;
uint32_t id;
};
diff --git a/vigs/Makefile.am b/vigs/Makefile.am
index df85b564..f15ceff7 100644
--- a/vigs/Makefile.am
+++ b/vigs/Makefile.am
@@ -12,7 +12,7 @@ AM_CFLAGS = \
libdrm_vigs_la_LTLIBRARIES = libdrm_vigs.la
libdrm_vigs_ladir = $(libdir)
-libdrm_vigs_la_LDFLAGS = -version-number 5:0:0 -no-undefined
+libdrm_vigs_la_LDFLAGS = -version-number 6:0:0 -no-undefined
libdrm_vigs_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
libdrm_vigs_la_SOURCES = vigs.c
diff --git a/vigs/vigs.c b/vigs/vigs.c
index dc95a7c5..f49d777e 100644
--- a/vigs/vigs.c
+++ b/vigs/vigs.c
@@ -286,6 +286,7 @@ int vigs_drm_surface_create(struct vigs_drm_device *dev,
uint32_t height,
uint32_t stride,
uint32_t format,
+ int scanout,
struct vigs_drm_surface **sfc)
{
struct vigs_drm_surface_impl *sfc_impl;
@@ -295,6 +296,7 @@ int vigs_drm_surface_create(struct vigs_drm_device *dev,
.height = height,
.stride = stride,
.format = format,
+ .scanout = scanout,
};
int ret;
@@ -322,6 +324,7 @@ int vigs_drm_surface_create(struct vigs_drm_device *dev,
sfc_impl->base.height = height;
sfc_impl->base.stride = stride;
sfc_impl->base.format = format;
+ sfc_impl->base.scanout = scanout;
sfc_impl->base.id = req.id;
*sfc = &sfc_impl->base;
@@ -381,6 +384,7 @@ int vigs_drm_surface_open(struct vigs_drm_device *dev,
sfc_impl->base.height = info_req.height;
sfc_impl->base.stride = info_req.stride;
sfc_impl->base.format = info_req.format;
+ sfc_impl->base.scanout = info_req.scanout;
sfc_impl->base.id = info_req.id;
*sfc = &sfc_impl->base;
diff --git a/vigs/vigs.h b/vigs/vigs.h
index f44027bd..87c6b0fa 100644
--- a/vigs/vigs.h
+++ b/vigs/vigs.h
@@ -81,6 +81,7 @@ struct vigs_drm_surface
uint32_t height;
uint32_t stride;
uint32_t format;
+ int scanout;
uint32_t id;
};
@@ -165,6 +166,7 @@ int vigs_drm_surface_create(struct vigs_drm_device *dev,
uint32_t height,
uint32_t stride,
uint32_t format,
+ int scanout,
struct vigs_drm_surface **sfc);
int vigs_drm_surface_open(struct vigs_drm_device *dev,