xf86-video-intel: 2 commits - src/sna/sna_video_hwmc.c src/sna/sna_video_textured.c
Chris Wilson
ickle at kemper.freedesktop.org
Fri Jan 27 02:34:21 PST 2012
src/sna/sna_video_hwmc.c | 5 +----
src/sna/sna_video_textured.c | 25 ++++++++++++++++++-------
2 files changed, 19 insertions(+), 11 deletions(-)
New commits:
commit 86f1ae9164a94323c08e1dc6cb301e5bc1126b10
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Fri Jan 27 10:26:11 2012 +0000
sna/video: Add some more DBG breadcrumbs to the textured PutImage
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_video_textured.c b/src/sna/sna_video_textured.c
index fcef820..09f1551 100644
--- a/src/sna/sna_video_textured.c
+++ b/src/sna/sna_video_textured.c
@@ -229,6 +229,12 @@ sna_video_textured_put_image(ScrnInfoPtr scrn,
Bool flush = false;
Bool ret;
+ DBG(("%s: src=(%d, %d),(%d, %d), dst=(%d, %d),(%d, %d), id=%d, sizep=%dx%d, sync?=%d\n",
+ __FUNCTION__,
+ src_x, src_y, src_w, src_h,
+ drw_x, drw_y, drw_w, drw_h,
+ id, width, height, sync));
+
if (buf == 0)
return BadAlloc;
@@ -245,6 +251,9 @@ sna_video_textured_put_image(ScrnInfoPtr scrn,
return Success;
if (xvmc_passthrough(id)) {
+ DBG(("%s: using passthough, name=%d\n",
+ __FUNCTION__, *(uint32_t *)buf));
+
if (sna->kgem.gen < 31) {
/* XXX: i915 is not support and needs some
* serious care. grep for KMS in i915_hwmc.c */
@@ -254,6 +263,8 @@ sna_video_textured_put_image(ScrnInfoPtr scrn,
frame.bo = kgem_create_for_name(&sna->kgem, *(uint32_t*)buf);
if (frame.bo == NULL)
return BadAlloc;
+
+ assert(frame.bo->size >= frame.size);
} else {
frame.bo = kgem_create_linear(&sna->kgem, frame.size);
if (frame.bo == NULL)
@@ -270,16 +281,16 @@ sna_video_textured_put_image(ScrnInfoPtr scrn,
&clip->extents);
ret = Success;
- if (!sna->render.video(sna, video, &frame, clip,
- src_w, src_h,
- drw_w, drw_h,
- pixmap))
+ if (sna->render.video(sna, video, &frame, clip,
+ src_w, src_h,
+ drw_w, drw_h,
+ pixmap))
+ DamageDamageRegion(drawable, clip);
+ else
ret = BadAlloc;
kgem_bo_destroy(&sna->kgem, frame.bo);
- DamageDamageRegion(drawable, clip);
-
/* Push the frame to the GPU as soon as possible so
* we can hit the next vsync.
*/
commit ce1cae7f4715fc8e14327c5b705d9f2cc45a3741
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Fri Jan 27 00:37:51 2012 +0000
sna/video: Simplify the gen2/915gm check
And make the later check in put image match.
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_video_hwmc.c b/src/sna/sna_video_hwmc.c
index 3da7d3a..1f36096 100644
--- a/src/sna/sna_video_hwmc.c
+++ b/src/sna/sna_video_hwmc.c
@@ -196,10 +196,7 @@ Bool sna_video_xvmc_setup(struct sna *sna,
char buf[64];
/* Needs KMS support. */
- if (IS_I915G(sna) || IS_I915GM(sna))
- return FALSE;
-
- if (IS_GEN2(sna))
+ if (sna->kgem.gen < 31)
return FALSE;
pAdapt = calloc(1, sizeof(XF86MCAdaptorRec));
diff --git a/src/sna/sna_video_textured.c b/src/sna/sna_video_textured.c
index a72d335..fcef820 100644
--- a/src/sna/sna_video_textured.c
+++ b/src/sna/sna_video_textured.c
@@ -245,7 +245,7 @@ sna_video_textured_put_image(ScrnInfoPtr scrn,
return Success;
if (xvmc_passthrough(id)) {
- if (sna->kgem.gen == 30) {
+ if (sna->kgem.gen < 31) {
/* XXX: i915 is not support and needs some
* serious care. grep for KMS in i915_hwmc.c */
return BadAlloc;
More information about the xorg-commit
mailing list