summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk@arm.linux.org.uk>2015-06-12 17:19:22 +0100
committerRussell King <rmk@arm.linux.org.uk>2015-06-29 12:58:35 +0100
commitd447c8d63ca58bc45cae6ab0a5c896ca8be54d35 (patch)
tree6205e0464b4d590c5c99824926ca437e83542187
parent4302a94cd087e19770848a75e3c4f4bc07563821 (diff)
src: Xv: ensure we check for changes in Xvbo stream
If an Xvbo stream switches between passing Xvbo buffers and normal images, we should re-setup accordingly, rather than trying to parse a normal image buffer as an Xvbo buffer. Handle this situation. Signed-off-by: Russell King <rmk@arm.linux.org.uk>
-rw-r--r--src/armada_drm_xv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/armada_drm_xv.c b/src/armada_drm_xv.c
index afcb19d..a5c32e0 100644
--- a/src/armada_drm_xv.c
+++ b/src/armada_drm_xv.c
@@ -705,7 +705,8 @@ armada_drm_plane_fbid(ScrnInfoPtr pScrn, struct drm_xv *drmxv, int image,
return BadAlloc;
if (drmxv->width != width || drmxv->height != height ||
- drmxv->fourcc != image || !drmxv->plane_format) {
+ drmxv->fourcc != image || !drmxv->plane_format ||
+ drmxv->is_xvbo != is_xvbo) {
uint32_t size;
/* format or size changed */