rpms/xorg-x11/devel xorg-x11-6.8.1-ati-radeon-dynamic-clocks-fix-2.patch, NONE, 1.1 xorg-x11.spec, 1.182, 1.183

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Apr 18 21:57:18 UTC 2005


Update of /cvs/dist/rpms/xorg-x11/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv19166

Modified Files:
	xorg-x11.spec 
Added Files:
	xorg-x11-6.8.1-ati-radeon-dynamic-clocks-fix-2.patch 
Log Message:
Fix radeon dynamic clocks again (#152648)

xorg-x11-6.8.1-ati-radeon-dynamic-clocks-fix-2.patch:
 radeon_driver.c |   31 ++++++++++++++++++++++++++++++-
 1 files changed, 30 insertions(+), 1 deletion(-)

--- NEW FILE xorg-x11-6.8.1-ati-radeon-dynamic-clocks-fix-2.patch ---
--- xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c.ati-radeon-dynamic-clocks-fix	2005-04-14 14:07:38.000000000 -0400
+++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_driver.c	2005-04-14 14:10:50.000000000 -0400
@@ -4512,7 +4512,7 @@
 
     RADEONSave(pScrn);
 
-    if ((!info->IsSecondary) && info->IsMobility) {
+    if ((!info->IsSecondary)) {
         if (xf86ReturnOptValBool(info->Options, OPTION_DYNAMIC_CLOCKS, FALSE)) {
 	    RADEONSetDynamicClock(pScrn, 1);
         } else {
@@ -7808,6 +7808,34 @@
     CARD32 tmp;
     switch(mode) {
         case 0: /* Turn everything OFF (ForceON to everything)*/
+#if 1
+	    /* some chips seem to have problems with the method of
+	     * forcing everything on as per below; thus we revert to the old 
+	     * forceON behavior
+	     */
+    	    if (info->HasCRTC2) {
+        	tmp = INPLL(pScrn, RADEON_SCLK_CNTL);
+        	OUTPLL(RADEON_SCLK_CNTL, ((tmp & ~RADEON_DYN_STOP_LAT_MASK) |
+                                  		RADEON_CP_MAX_DYN_STOP_LAT |
+                                  		RADEON_SCLK_FORCEON_MASK));
+
+        	if (info->ChipFamily == CHIP_FAMILY_RV200) {
+            	    tmp = INPLL(pScrn, RADEON_SCLK_MORE_CNTL);
+            	    OUTPLL(RADEON_SCLK_MORE_CNTL, tmp | RADEON_SCLK_MORE_FORCEON);
+        	}
+
+    	    }
+
+	    tmp = INPLL(pScrn, RADEON_MCLK_CNTL);
+	    OUTPLL(RADEON_MCLK_CNTL, (tmp |
+                               RADEON_FORCEON_MCLKA |
+                               RADEON_FORCEON_MCLKB |
+                               RADEON_FORCEON_YCLKA |
+                               RADEON_FORCEON_YCLKB |
+                               RADEON_FORCEON_MC |
+                               RADEON_FORCEON_AIC));
+
+#else
             if ( !info->HasCRTC2 ) {
                 tmp = INPLL(pScrn, RADEON_SCLK_CNTL);
                 tmp |= (RADEON_SCLK_FORCE_CP   | RADEON_SCLK_FORCE_HDP |
@@ -7945,6 +7973,7 @@
 			 RADEON_PIXCLK_DAC_ALWAYS_ONb); 
                 OUTPLL(RADEON_VCLK_ECP_CNTL, tmp);
 	    }
+#endif
 	    xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Dynamic Clock Scaling Disabled\n");
             break;
         case 1:


Index: xorg-x11.spec
===================================================================
RCS file: /cvs/dist/rpms/xorg-x11/devel/xorg-x11.spec,v
retrieving revision 1.182
retrieving revision 1.183
diff -u -r1.182 -r1.183
--- xorg-x11.spec	16 Apr 2005 16:02:31 -0000	1.182
+++ xorg-x11.spec	18 Apr 2005 21:57:15 -0000	1.183
@@ -21,7 +21,7 @@
 
 Name: xorg-x11
 Version: 6.8.2
-Release: 24
+Release: 25
 #Release: 1.FC3.10test
 #Release: 0.%{cvs_release}.0
 
@@ -478,6 +478,11 @@
 Patch9333: XFree86-4.1.0-xpm-security-fix-CAN-2005-0605.patch
 Patch9334: xorg-x11-6.8.2-xorg.conf.man-dont-refer-to-nonexisting-example.patch
 
+# This patch reverts the dynamic clocks handling in the radeon driver
+# to the behavior we had pre-6.8.2.  It's not the right patch going
+# forward, but until the dynamic clocks code is fixed properly, let's
+# stick to something that works.
+Patch9335: xorg-x11-6.8.1-ati-radeon-dynamic-clocks-fix-2.patch
 
 # EXPERIMENTAL PATCHES intended strictly for fedora-devel (FC4 currently).
 # Once a patch is determined to be safe to apply to other releases, it can
@@ -1155,6 +1160,8 @@
 %patch9333 -p0 -b .xpm-security-fix-CAN-2005-0605
 %patch9334 -p0 -b .xorg.conf.man-dont-refer-to-nonexisting-example
 
+%patch9335 -p0 -b .ati-radeon-dynamic-clocks-fix-2
+
 # EXPERIMENTAL PATCHES intended strictly for fedora-devel (FC4 currently)
 %if %{build_fc4}
 
@@ -3606,6 +3613,11 @@
 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT 
 
 %changelog
+* Mon Apr 18 2005 Kristian Høgsberg <krh at redhat.com> 6.8.2-25
+- Add xorg-x11-6.8.1-ati-radeon-dynamic-clocks-fix-2.patch to revert
+  radeon dynamic clock setup to what we had in 6.8.1.  The 6.8.2 code
+  still causes lockups on some systems (#152648).
+
 * Sat Apr 16 2005 Mike A. Harris <mharris at redhat.com> 6.8.2-24
 - Remove the Speedo font files, as Xorg no longer supports Speedo fonts in
   6.8.0 onward but includes the fonts accidentally. (#142744,154191)




More information about the fedora-cvs-commits mailing list