xf86-video-ati: Branch 'master'

Dave Airlie airlied at kemper.freedesktop.org
Mon Dec 15 21:31:43 PST 2008


 src/AtomBios/CD_Operations.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 1431bc6900b0e0d7f486b5b3ba281873472b3fdc
Author: Dave Airlie <airlied at redhat.com>
Date:   Tue Dec 16 15:31:34 2008 +1000

    atombios: fix issue with Clearing of MM_INDEX 0.
    
    While playing with tv-out I discovered this issue with clearing
    the MM_INDEX register.

diff --git a/src/AtomBios/CD_Operations.c b/src/AtomBios/CD_Operations.c
index 58c4ae9..ff51746 100644
--- a/src/AtomBios/CD_Operations.c
+++ b/src/AtomBios/CD_Operations.c
@@ -618,7 +618,13 @@ VOID ProcessCompare(PARSER_TEMP_DATA STACK_BASED * pParserTempData)
 VOID ProcessClear(PARSER_TEMP_DATA STACK_BASED * pParserTempData)
 {
     pParserTempData->DestData32=GetDestination[pParserTempData->ParametersType.Destination](pParserTempData);
-    pParserTempData->DestData32 &= ~(AlignmentMask[pParserTempData->CD_Mask.SrcAlignment] << SourceAlignmentShift[pParserTempData->CD_Mask.SrcAlignment]);
+
+    if (pParserTempData->ParametersType.Destination == 0 &&
+	pParserTempData->Multipurpose.CurrentPort == ATI_RegsPort &&
+	pParserTempData->Index == 0) {
+        pParserTempData->DestData32 &= 0xffffffff;
+    } else
+        pParserTempData->DestData32 &= ~(AlignmentMask[pParserTempData->CD_Mask.SrcAlignment] << SourceAlignmentShift[pParserTempData->CD_Mask.SrcAlignment]);
     PutDataFunctions[pParserTempData->ParametersType.Destination](pParserTempData);
 
 }


More information about the xorg-commit mailing list