From 7c713fb0da9c5c0c5c4e727ff4c801ec0e6e4a83 Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Tue, 14 Mar 2006 23:28:47 +0000 Subject: Version 0.61 from ASPEED Technology Inc. (Update for Xorg 6.9.0 - Can't reference XAACOPYROP) Bugzilla #4937 Attachment #4044 --- ChangeLog | 10 ++++++++++ src/ast.h | 4 ++-- src/ast_accel.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++-------- src/ast_driver.c | 2 +- 4 files changed, 61 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8b61708..722a134 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2006-03-14 Alan Coopersmith + + * src/ast.h: + * src/ast_accel.c: + * src/ast_driver.c: + Version 0.61 from ASPEED Technology Inc. + (Update for Xorg 6.9.0 - Can't reference XAACOPYROP) + Bugzilla #4937 + Attachment #4044 + 2006-03-14 Alan Coopersmith * src/ast.h: diff --git a/src/ast.h b/src/ast.h index a30ae5f..8683211 100644 --- a/src/ast.h +++ b/src/ast.h @@ -35,10 +35,10 @@ #endif /* AST REC Info */ -#define AST_NAME "AST" +#define AST_NAME "AST1000/2000" #define AST_DRIVER_NAME "ast" #define AST_MAJOR_VERSION 0 -#define AST_MINOR_VERSION 60 +#define AST_MINOR_VERSION 61 #define AST_PATCH_VERSION 0 #define AST_VERSION \ ((AST_MAJOR_VERSION << 20) | (AST_MINOR_VERSION << 10) | AST_PATCH_VERSION) diff --git a/src/ast_accel.c b/src/ast_accel.c index 69da85f..b47db38 100644 --- a/src/ast_accel.c +++ b/src/ast_accel.c @@ -55,6 +55,46 @@ #include "ast.h" #ifdef Accel_2D +/* ROP Translation Table */ +int ASTXAACopyROP[16] = +{ + ROP_0, /* GXclear */ + ROP_DSa, /* GXand */ + ROP_SDna, /* GXandReverse */ + ROP_S, /* GXcopy */ + ROP_DSna, /* GXandInverted */ + ROP_D, /* GXnoop */ + ROP_DSx, /* GXxor */ + ROP_DSo, /* GXor */ + ROP_DSon, /* GXnor */ + ROP_DSxn, /* GXequiv */ + ROP_Dn, /* GXinvert*/ + ROP_SDno, /* GXorReverse */ + ROP_Sn, /* GXcopyInverted */ + ROP_DSno, /* GXorInverted */ + ROP_DSan, /* GXnand */ + ROP_1 /* GXset */ +}; + +int ASTXAAPatternROP[16]= +{ + ROP_0, + ROP_DPa, + ROP_PDna, + ROP_P, + ROP_DPna, + ROP_D, + ROP_DPx, + ROP_DPo, + ROP_DPon, + ROP_PDxn, + ROP_Dn, + ROP_PDno, + ROP_Pn, + ROP_DPno, + ROP_DPan, + ROP_1 +}; /* extern function */ extern void vWaitEngIdle(ScrnInfoPtr pScrn, ASTRecPtr pAST); @@ -265,7 +305,7 @@ static void ASTSetupForScreenToScreenCopy(ScrnInfoPtr pScrn, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAACopyROP[rop] << 8); + cmdreg |= (ASTXAACopyROP[rop] << 8); pAST->ulCMDReg = cmdreg; if (!pAST->MMIO2D) @@ -403,7 +443,7 @@ ASTSetupForSolidFill(ScrnInfoPtr pScrn, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAAPatternROP[rop] << 8); + cmdreg |= (ASTXAAPatternROP[rop] << 8); pAST->ulCMDReg = cmdreg; if (!pAST->MMIO2D) @@ -505,7 +545,7 @@ static void ASTSetupForSolidLine(ScrnInfoPtr pScrn, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAAPatternROP[rop] << 8); + cmdreg |= (ASTXAAPatternROP[rop] << 8); pAST->ulCMDReg = cmdreg; if (!pAST->MMIO2D) @@ -711,7 +751,7 @@ ASTSetupForDashedLine(ScrnInfoPtr pScrn, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAAPatternROP[rop] << 8); + cmdreg |= (ASTXAAPatternROP[rop] << 8); if(bg == -1) { cmdreg |= CMD_TRANSPARENT; bg = 0; @@ -865,7 +905,7 @@ ASTSetupForMonoPatternFill(ScrnInfoPtr pScrn, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAAPatternROP[rop] << 8); + cmdreg |= (ASTXAAPatternROP[rop] << 8); pAST->ulCMDReg = cmdreg; if (!pAST->MMIO2D) @@ -978,7 +1018,7 @@ ASTSetupForColor8x8PatternFill(ScrnInfoPtr pScrn, int patx, int paty, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAAPatternROP[rop] << 8); + cmdreg |= (ASTXAAPatternROP[rop] << 8); pAST->ulCMDReg = cmdreg; cpp = (pScrn->bitsPerPixel + 1) / 8; pataddr = (CARD32 *)(pAST->FBVirtualAddr + @@ -1097,7 +1137,7 @@ ASTSetupForCPUToScreenColorExpandFill(ScrnInfoPtr pScrn, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAAPatternROP[rop] << 8); + cmdreg |= (ASTXAAPatternROP[rop] << 8); if(bg == -1) { cmdreg |= CMD_FONT_TRANSPARENT; bg = 0; @@ -1219,7 +1259,7 @@ ASTSetupForScreenToScreenColorExpandFill(ScrnInfoPtr pScrn, cmdreg |= CMD_COLOR_32; break; } - cmdreg |= (XAAPatternROP[rop] << 8); + cmdreg |= (ASTXAAPatternROP[rop] << 8); if(bg == -1) { cmdreg |= CMD_FONT_TRANSPARENT; bg = 0; diff --git a/src/ast_driver.c b/src/ast_driver.c index 44a57d3..a9f6de0 100644 --- a/src/ast_driver.c +++ b/src/ast_driver.c @@ -296,7 +296,7 @@ astSetup(pointer module, pointer opts, int *errmaj, int *errmin) static void ASTIdentify(int flags) { - xf86PrintChipsets(AST_NAME, "Driver for AST Graphics Chipsets", + xf86PrintChipsets(AST_NAME, "Driver for ASPEED Graphics Chipsets", ASTChipsets); } -- cgit v1.2.3