summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Vorobiov <s.vorobiov@samsung.com>2014-02-10 19:02:51 +0400
committerStanislav Vorobiov <s.vorobiov@samsung.com>2014-03-06 17:57:14 +0400
commit9a9480f293bcaa3ceccc16eae9858a7bbb9aa5b4 (patch)
treefbc48bd587b7535c0c9e721311c6b594a55379d2
parent56c3ef8f10406185c5b7dd995e8f3625164b9a7e (diff)
downloadlibdrm-9a9480f293bcaa3ceccc16eae9858a7bbb9aa5b4.tar.gz
libdrm-9a9480f293bcaa3ceccc16eae9858a7bbb9aa5b4.tar.bz2
libdrm-9a9480f293bcaa3ceccc16eae9858a7bbb9aa5b4.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,