xf86-video-intel: 2 commits - src/i830_dvo.c src/i965_video.c

Eric Anholt anholt at kemper.freedesktop.org
Tue Apr 17 21:02:00 EEST 2007


 src/i830_dvo.c   |    8 +++++++-
 src/i965_video.c |   10 +++++-----
 2 files changed, 12 insertions(+), 6 deletions(-)

New commits:
diff-tree a089ac11beb4c801928c17780401e913bc0d5257 (from 37ee68a95ca8c86ebe9abafaaf55b060dd2a2f73)
Author: Eric Anholt <eric at anholt.net>
Date:   Tue Apr 17 11:01:05 2007 -0700

    Add all the possible ivch slave addresses (still commented out).

diff --git a/src/i830_dvo.c b/src/i830_dvo.c
index 04750e5..0bb25bd 100644
--- a/src/i830_dvo.c
+++ b/src/i830_dvo.c
@@ -68,7 +68,13 @@ struct _I830DVODriver i830_dvo_drivers[]
      (CH7xxx_ADDR_1<<1), CH7xxxSymbols, NULL , NULL, NULL},
     /*
     {I830_DVO_CHIP_LVDS, "ivch", "ivch_methods",
-     (0x2 << 1), ivch_symbols, NULL, NULL, NULL},
+     0x04, ivch_symbols, NULL, NULL, NULL},
+    {I830_DVO_CHIP_LVDS, "ivch", "ivch_methods",
+     0x44, ivch_symbols, NULL, NULL, NULL},
+    {I830_DVO_CHIP_LVDS, "ivch", "ivch_methods",
+     0x84, ivch_symbols, NULL, NULL, NULL},
+    {I830_DVO_CHIP_LVDS, "ivch", "ivch_methods",
+     0xc4, ivch_symbols, NULL, NULL, NULL},
     */
     /*
     { I830_DVO_CHIP_LVDS, "ch7017", "ch7017_methods",
diff-tree 37ee68a95ca8c86ebe9abafaaf55b060dd2a2f73 (from ac9181c014638dbeb334b40b4029d0ccb2b7a0fc)
Author: Eric Anholt <eric at anholt.net>
Date:   Tue Apr 17 10:50:02 2007 -0700

    Bug #10438: Fix 965 XV when sourcing from less than the full image.
    
    Bob deinterlacing in MythTV, and the zoom options in totem would result in
    attempting to source from outside the video instead of scaling appropriately.

diff --git a/src/i965_video.c b/src/i965_video.c
index 9e96527..17d2006 100644
--- a/src/i965_video.c
+++ b/src/i965_video.c
@@ -172,6 +172,7 @@ I965DisplayVideoTextured(ScrnInfoPtr pSc
     struct brw_instruction *ps_kernel;
     struct brw_instruction *sip_kernel;
     float *vb;
+    float src_scale_x, src_scale_y;
     CARD32 *binding_table;
     Bool first_output = TRUE;
     int dest_surf_offset, src_surf_offset, src_sampler_offset, vs_offset;
@@ -672,6 +673,10 @@ I965DisplayVideoTextured(ScrnInfoPtr pSc
     dxo = dstRegion->extents.x1;
     dyo = dstRegion->extents.y1;
 
+    /* Use normalized texture coordinates */
+    src_scale_x = ((float)src_w / width) / (float)drw_w;
+    src_scale_y = ((float)src_h / height) / (float)drw_h;
+
     pbox = REGION_RECTS(dstRegion);
     nbox = REGION_NUM_RECTS(dstRegion);
     while (nbox--) {
@@ -680,7 +685,6 @@ I965DisplayVideoTextured(ScrnInfoPtr pSc
 	int box_x2 = pbox->x2;
 	int box_y2 = pbox->y2;
 	int i;
-	float src_scale_x, src_scale_y;
 
 	if (!first_output) {
 	    /* Since we use the same little vertex buffer over and over, sync
@@ -691,10 +695,6 @@ I965DisplayVideoTextured(ScrnInfoPtr pSc
 
 	pbox++;
 
-	/* Use normalized texture coordinates */
-	src_scale_x = (float)1.0 / (float)drw_w;
-	src_scale_y = (float)1.0 / (float)drw_h;
-
 	i = 0;
 	vb[i++] = (box_x2 - dxo) * src_scale_x;
 	vb[i++] = (box_y2 - dyo) * src_scale_y;



More information about the xorg-commit mailing list