From 2d43a9db2b94d5e84a370218b2e018d04f5dc42d Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Apr 03 2009 10:03:49 +0000 Subject: - fix up r600 xv harder --- diff --git a/radeon-r6xx-fix.patch b/radeon-r6xx-fix.patch index 1c61041..c2a7914 100644 --- a/radeon-r6xx-fix.patch +++ b/radeon-r6xx-fix.patch @@ -1,11 +1,12 @@ -From c3d0bb80ce0c2e70b05168e4ab8fa2b4de539d7b Mon Sep 17 00:00:00 2001 +From 8cdbd33ded588f6edf03ac17b617547af98a3544 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Fri, 3 Apr 2009 20:34:05 +1100 Subject: [PATCH] r600: fix src offsets after kms changes --- src/r600_textured_videofuncs.c | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) + src/radeon_textured_video.c | 6 +++--- + 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/r600_textured_videofuncs.c b/src/r600_textured_videofuncs.c index 3dfe151..f4b4f1e 100644 @@ -16,7 +17,7 @@ index 3dfe151..f4b4f1e 100644 case FOURCC_YV12: case FOURCC_I420: - accel_state->src_mc_addr[0] = pPriv->src_offset; -+ accel_state->src_mc_addr[0] = pPriv->src_offset + info->fbLocation + pScrn->fbOffset; ++ accel_state->src_mc_addr[0] = pPriv->src_offset + info->fbLocation + pSrcn->fbOffset; accel_state->src_size[0] = accel_state->src_pitch[0] * pPriv->h; /* flush texture cache */ @@ -25,10 +26,38 @@ index 3dfe151..f4b4f1e 100644 case FOURCC_YUY2: default: - accel_state->src_mc_addr[0] = pPriv->src_offset; -+ accel_state->src_mc_addr[0] = pPriv->src_offset + info->fbLocation + pScrn->fbOffset; ++ accel_state->src_mc_addr[0] = pPriv->src_offset + info->fbLocation + pSrcn->fbOffset; accel_state->src_size[0] = accel_state->src_pitch[0] * pPriv->h; /* flush texture cache */ +diff --git a/src/radeon_textured_video.c b/src/radeon_textured_video.c +index 1ef8dc3..0410dd2 100644 +--- a/src/radeon_textured_video.c ++++ b/src/radeon_textured_video.c +@@ -502,12 +502,12 @@ RADEONPutImageTextured(ScrnInfoPtr pScrn, + if (info->DMAForXv) { + if (id == FOURCC_YV12) + R600CopyPlanarHW(pScrn, buf, buf + s3offset, buf + s2offset, +- pPriv->src_offset, ++ pPriv->src_offset + info->fbLocation + pScrn->fboffset, + srcPitch, srcPitch2, pPriv->src_pitch, + width, height); + else + R600CopyPlanarHW(pScrn, buf, buf + s2offset, buf + s3offset, +- pPriv->src_offset, ++ pPriv->src_offset + info->fbLocation + pScrn->fboffset, + srcPitch, srcPitch2, pPriv->src_pitch, + width, height); + } else { +@@ -569,7 +569,7 @@ RADEONPutImageTextured(ScrnInfoPtr pScrn, + default: + if (info->ChipFamily >= CHIP_FAMILY_R600) { + if (info->DMAForXv) +- R600CopyPackedHW(pScrn, buf, pPriv->src_offset, ++ R600CopyPackedHW(pScrn, buf, pPriv->src_offset + info->fbLocation + pScrn->fboffset, + 2 * width, pPriv->src_pitch, + width, height); + else -- 1.6.2