xf86-video-ati: Branch 'master'

Alex Deucher agd5f at kemper.freedesktop.org
Fri Mar 13 08:49:31 PDT 2009


 src/radeon_driver.c |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

New commits:
commit 104e13da74de37477e3a31a5de96c5ebb8fe888b
Author: Cooper Yuan <cooperyuan at gmail.com>
Date:   Fri Mar 13 11:47:43 2009 -0400

    radeon: save bios scratch registers in Preinit()
    
    The display detect routines can change these which causes
    havok with some bioses.

diff --git a/src/radeon_driver.c b/src/radeon_driver.c
index c0f5e7b..47a40ab 100644
--- a/src/radeon_driver.c
+++ b/src/radeon_driver.c
@@ -122,6 +122,9 @@ static void RADEONSetDynamicClock(ScrnInfoPtr pScrn, int mode);
 static void RADEONForceSomeClocks(ScrnInfoPtr pScrn);
 static void RADEONSaveMemMapRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save);
 
+static void
+RADEONSaveBIOSRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save);
+
 #ifdef XF86DRI
 static void RADEONAdjustMemMapRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save);
 #endif
@@ -2916,6 +2919,9 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, int flags)
     if (!RADEONPreInitBIOS(pScrn, pInt10))
 	goto fail;
 
+    /* Save BIOS scratch registers */
+    RADEONSaveBIOSRegisters(pScrn, info->SavedReg);
+
 #ifdef XF86DRI
     /* PreInit DRI first of all since we need that for getting a proper
      * memory map
@@ -5138,7 +5144,6 @@ static void RADEONSave(ScrnInfoPtr pScrn)
 	    RADEONSaveTVRegisters(pScrn, save);
     }
 
-    RADEONSaveBIOSRegisters(pScrn, save);
     if (info->ChipFamily < CHIP_FAMILY_R600)
         RADEONSaveSurfaces(pScrn, save);
 


More information about the xorg-commit mailing list