rpms/xorg-x11-drv-openchrome/F-13 openchrome-0.2.904-sanitize_SaveVideoRegister.patch, NONE, 1.1 openchrome-0.2.904-setup_HWDiff_HQVCmeRegs_for_all_chipsets.patch, NONE, 1.1 xorg-x11-drv-openchrome.spec, 1.54, 1.55

Xavier Bachelot xavierb at fedoraproject.org
Wed Mar 31 17:16:21 UTC 2010


Author: xavierb

Update of /cvs/pkgs/rpms/xorg-x11-drv-openchrome/F-13
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv5826/F-13

Modified Files:
	xorg-x11-drv-openchrome.spec 
Added Files:
	openchrome-0.2.904-sanitize_SaveVideoRegister.patch 
	openchrome-0.2.904-setup_HWDiff_HQVCmeRegs_for_all_chipsets.patch 
Log Message:
fix CME Xv regression

openchrome-0.2.904-sanitize_SaveVideoRegister.patch:
 via_swov.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

--- NEW FILE openchrome-0.2.904-sanitize_SaveVideoRegister.patch ---
diff --git src/via_swov.c src/via_swov.c
index 158d60f..0f6bf95 100644
--- src/via_swov.c
+++ src/via_swov.c
@@ -206,12 +206,14 @@ ResetVidRegBuffer(VIAPtr pVia)
 static void
 SaveVideoRegister(VIAPtr pVia, CARD32 index, CARD32 data)
 {
+    if (pVia->VidRegCursor >= VIDREG_BUFFER_SIZE) {
+        DBG_DD(ErrorF("SaveVideoRegister: Out of video register space flushing"));
+        FlushVidRegBuffer(pVia);
+        ResetVidRegBuffer(pVia);
+    }
+
     pVia->VidRegBuffer[pVia->VidRegCursor++] = index;
     pVia->VidRegBuffer[pVia->VidRegCursor++] = data;
-
-    if (pVia->VidRegCursor > VIDREG_BUFFER_SIZE) {
-        DBG_DD(ErrorF("SaveVideoRegister: Out of video register space"));
-    }
 }
 
 /*

openchrome-0.2.904-setup_HWDiff_HQVCmeRegs_for_all_chipsets.patch:
 via_swov.c |    4 ++++
 1 file changed, 4 insertions(+)

--- NEW FILE openchrome-0.2.904-setup_HWDiff_HQVCmeRegs_for_all_chipsets.patch ---
diff --git src/via_swov.c src/via_swov.c
index 0f6bf95..2092bd5 100644
--- src/via_swov.c
+++ src/via_swov.c
@@ -286,6 +286,7 @@ VIAVidHWDiffInit(ScrnInfoPtr pScrn)
             HWDiff->dwHQVInitPatch = VID_HWDIFF_FALSE;
             HWDiff->dwHQVDisablePatch = VID_HWDIFF_TRUE;
             HWDiff->dwNeedV1Prefetch = VID_HWDIFF_FALSE;
+            HWDiff->HQVCmeRegs = hqv_cme_regs;
             break;
         case VIA_K8M890:
             HWDiff->dwThreeHQVBuffer = VID_HWDIFF_TRUE;
@@ -294,6 +295,7 @@ VIAVidHWDiffInit(ScrnInfoPtr pScrn)
             HWDiff->dwHQVInitPatch = VID_HWDIFF_FALSE;
             HWDiff->dwHQVDisablePatch = VID_HWDIFF_TRUE;
             HWDiff->dwNeedV1Prefetch = VID_HWDIFF_TRUE;
+            HWDiff->HQVCmeRegs = hqv_cme_regs;
             break;
         case VIA_P4M890:
             HWDiff->dwThreeHQVBuffer = VID_HWDIFF_TRUE;
@@ -302,6 +304,7 @@ VIAVidHWDiffInit(ScrnInfoPtr pScrn)
             HWDiff->dwHQVInitPatch = VID_HWDIFF_FALSE;
             HWDiff->dwHQVDisablePatch = VID_HWDIFF_TRUE;
             HWDiff->dwNeedV1Prefetch = VID_HWDIFF_FALSE;
+            HWDiff->HQVCmeRegs = hqv_cme_regs;
             break;
         case VIA_CX700:
             HWDiff->dwThreeHQVBuffer = VID_HWDIFF_TRUE;
@@ -310,6 +313,7 @@ VIAVidHWDiffInit(ScrnInfoPtr pScrn)
             HWDiff->dwHQVInitPatch = VID_HWDIFF_FALSE;
             HWDiff->dwHQVDisablePatch = VID_HWDIFF_FALSE;
             HWDiff->dwNeedV1Prefetch = VID_HWDIFF_FALSE;
+            HWDiff->HQVCmeRegs = hqv_cme_regs;
             break;
         case VIA_VX800:
             HWDiff->dwThreeHQVBuffer = VID_HWDIFF_TRUE;


Index: xorg-x11-drv-openchrome.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-openchrome/F-13/xorg-x11-drv-openchrome.spec,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -p -r1.54 -r1.55
--- xorg-x11-drv-openchrome.spec	24 Mar 2010 19:47:12 -0000	1.54
+++ xorg-x11-drv-openchrome.spec	31 Mar 2010 17:16:21 -0000	1.55
@@ -10,7 +10,7 @@
 Summary:	Xorg X11 openchrome video driver
 Name:		xorg-x11-drv-openchrome
 Version:	0.2.904
-Release:	4%{?dist}
+Release:	5%{?dist}
 URL:		http://www.openchrome.org
 License:	MIT
 Group:		User Interface/X Hardware Support
@@ -33,6 +33,8 @@ Patch14:         openchrome-0.2.904-add_
 Patch15:         openchrome-0.2.904-2d_perf_tweaks.patch
 Patch16:         openchrome-0.2.904-put_50ms_timeout_on_HQV.patch
 Patch17:         openchrome-0.2.904-fix_xv_on_vx800.patch
+Patch18:         openchrome-0.2.904-sanitize_SaveVideoRegister.patch
+Patch19:         openchrome-0.2.904-setup_HWDiff_HQVCmeRegs_for_all_chipsets.patch
 
 ExclusiveArch:	%{ix86} x86_64
 
@@ -78,6 +80,8 @@ X.Org X11 openchrome video driver XvMC d
 %patch15 -p0
 %patch16 -p0
 %patch17 -p0
+%patch18 -p0
+%patch19 -p0
 
 
 %build
@@ -134,6 +138,10 @@ fi
 
 
 %changelog
+* Wed Mar 31 2010 Xavier Bachelot <xavier at bachelot.org> - 0.2.904-5
+- Sanitize SaveVideoRegister function.
+- Fix an Xv regression on CME chipsets introduced by the VX855 Xv patch.
+
 * Mon Mar 22 2010 Xavier Bachelot <xavier at bachelot.org> - 0.2.904-4
 - Fix an Xv regression on VX800 introduced by the VX855 Xv patch.
 



More information about the scm-commits mailing list